什么时候用?
- 某个组件的状态,需要共享
- 某个状态需要在任何地方都可以拿到
- 一个组件需要改变全局状态
- 一个组件需要改变另一个组件的状态
你用react不能解决的组件通信,redux可以给你解决。
redux核心概念
store相当于一个应用的state,但是不可随意更改,必须通过action更改。 强制使用 action 来描述所有变化带来的好处是可以清晰地知道应用中到底发生了什么。 为了把 action 和 state 串起来,开发一些函数,这就是 reducer。 reducer 只是一个接收 state 和 action,并返回新的 state 的函数。 这差不多就是 Redux 思想的全部。
redux流程
1.用户触发action
store.dispatch(action);
2.Store 自动调用 Reducer(Store 收到 Action 以后,必须给出一个新的 State,这样 View 才会发生变化。这种 State 的计算过程就叫做 Reducer。),并且传入两个参数:当前 State 和收到的 Action。 Reducer 会返回新的 State 。
3.State 一旦有变化,Store 就会调用监听函数 store.subscribe(listener); listener可以通过store.getState()得到当前状态。
PS:redux中文文档https://www.redux.org.cn/,该文档讲述很详细,如果你想详细了解redux的基础,进阶,建议好好研读该文档。 文档提供的生态系统(https://www.redux.org.cn/docs/introduction/Ecosystem.html)内容很多,有教程,有各种插件。
来源:https://www.cnblogs.com/lasn/p/12532458.html