react全局状态管理react-redux

简言之,通过react-redux提供的connect方法将UI组件同store连接起来,connect方法可以接受两个参数,第一个为mapStateToProps(接受两个参数,state,ownProps),用于UI组件的输入逻辑,此建立了从外部的数据(即store中的state对象)到UI组件的props的一个映射;第二个参数为mapDispatchToProps(接受两个参数,dispatch,ownProps),用于UI组件的输出逻辑,即用户发出的动作如何变为 Action 对象,从 UI 组件传出去,从而影响外部数据state。

State 的变化必须是 View 导致的,Action 就是 View 发出的通知,表示 State 应该要发生变化了。

Action 是一个对象。其中的type属性是必须的,表示 Action 的名称,其他属性可以自由设置。 

对象store的方法dispath用于派发action,store.dispatch(action)是 View 发出 Action 的唯一方法。

通过dispath派发的action会触发reducer,reducer执行会返回一个新的state,此时state改变了。

state的改变又会通过mapStateToProps函数传入UI组件的props,UI组件的Props改变又会触发render函数,从而更新UI组件。

以上就是redux大致的工作流程。欢迎大神们评论批评指正。(action,reducer等基本概念参见阮老师的博客)

你可能感兴趣的:(前端,react专区,react)