Skip to content

redux 和 mobx ​

2023-06-16 10:06:46

redux ​

  • 初始阶段,调用一次 reducer,传入的 state 作为初始 state,并创建好 store
  • 更新阶段,调用 dispatch 把一个 action 发送到 store 中。 store 用之前的 state 和 action 中的数据再一次调用 reducer,并返回新的 state store 再去通知所有订阅过的 UI,UI 组件检查它们需要的 state 部分是否被更新 发现数据被更新的每个 UI 组件强制使用新数据重新渲染,紧接着更新页面
  • redux 三大原则
    • 单项数据流
    • state 只读,在 Redux 中不能通过直接改变 state 来让状态发生变化,如果想要改变 state 就必须触发一次 action ,通过 action 执行每个 reducer
    • 函数式编程 纯函数 无副作用
  • 中间件思想
    • redux 应用了前端领域为数不多的中间件 compose,那么 redux 的中间件是用来做什么的? 答案只有一个: 那就是强化 dispatch,Redux 提供了中间件机制,使用者可以根据需要来强化 dispatch 函数,传统的 dispatch 是不支持异步的,但是可以针对 Redux 做强化,于是有了 redux-thunk,redux-actions 等中间件

mobx ​

  • 触发 actions,更改 state 的值,然后 Mobx 更改 state 的副作用就是更新 UI 看似比 Redux 的要简单很多,其实是 MobX 在背后默默的帮我们实现了
  • mutable 可以直接更改状态,继而更改视图数据
  • 面向对象编程 一个 store 就是一个对象

Released under the MIT License.