MobX(5.x)与mobx-react(6.x)是否兼容React 18?求适配版本
问题解答
兼容性结论
MobX 5.x 与 mobx-react 6.x 完全不兼容 React 18。你遇到的「类组件在<React.StrictMode>下observer失效」的问题,正是因为该版本组合未适配React 18引入的并发渲染机制,尤其是StrictMode下的组件双重挂载逻辑,旧版本的MobX响应式绑定无法处理这种场景。
适配React 18的版本要求
要在React 18环境下正常使用MobX,需要同时升级以下两个包到指定版本:
- MobX: 升级至
6.10.0及以上版本(从该版本开始正式支持React 18的并发特性) - mobx-react: 升级至
7.6.0及以上版本(适配React 18的同时,修复了类组件在StrictMode下的observer失效问题)
额外说明
升级到兼容版本后,原有使用observer装饰类组件或函数组件的代码无需大幅修改,即可正常响应React 18的并发渲染逻辑,StrictMode下的双重挂载也不会再影响响应式更新的触发。
内容的提问来源于stack exchange,提问作者Vinitha
相关产品推荐
相关产品推荐

