Redux三大核心
1、单一数据源
2、state只读:唯一改变state的方法就是触发action
store.dispatch()
3、使用纯函数来执行修改:自己编写reducer
组成
State-状态
Action-事件:本质是一个对象。描述了有事情要发生,但没有说明要如何更新state
Reducers:本质是一个函数,响应发送过来的actions,return返回值store接受的参数
Store:把action与reducer联系在一起的对象
功能
提供getState:获取state
提供dispatch:发送acton
提供subscribe:注册监听
具体操作
1、创建Action(发送动作)
2、创建Reducer(实际操作)
3、创建Store
总流程
中间件
Redux 的中间件提供的是位于 action
被发起之后,到达 reducer
之前的扩展点,换而言之,原本 view -> action -> reducer -> store
的数据流加上中间件后变成了 view -> action -> middleware -> reducer -> store
,在这一环节我们可以做一些 “副作用” 的操作,如 异步请求、打印日志等。
react-redux
Provider
Connect
使用
引入provider组件
Connect的使用
mapStateToProps(state,ownProps):那个组件想用props
mapDispatchToProps(dispatch,ownProps):那个组件要发送props
发送方:
接收方:
数据流程
总流程
VUEX
state
1、创建mutations
实际更改数值
2、创建actions
调用commit,使用mutate的方法
3、实例:
调用dispatch调用action的方法(通过辅助函数可以不用)