redux和mobx

207 阅读1分钟

共同作用都是状态管理的作用.

设计思想

Redux 更多的是遵循函数式编程思想
Mobx 设计更多偏向于面向对象编程和响应式编程,通常将状态包装成可观察对象,一旦状态对象变更,就能自动获得更新。

对store管理的不同

Redux将所有共享的数据集中在一个大的store中,统一管理
Mobx是按模块将状态划分出多个独立的store进行管理

对于数据的操作

Redux强调的是对象的不可变性,不能直接操作状态对象,而是在原来状态对象的基础上返回一个新的状态对象,最后返回应用的上一状态
Mobx中可以直接使用新值更新状态对象(多人协作下可能导致自己的数据被他人误修改的情况存在,可能还要开启严格状态)

学习成本

Redux 较繁琐,流程较多,需要配置,创建store,编写reducer,action,如果涉及异步任务,还需要引入中间件
Mobx 流程相对就简单很多,根据文档上手也比较快