redux
redux 理解
什么: redux 是专门做状态管理的独立第三方库,不是 react 插件
作用: 对应用中状态进行集中式的管理(写/读)
开发: 与 react-redux,redux-thunk 等插件配合使用
redux 相关 API
redux 中包含: createStore(),applyMiddleware(),combineReducers()
store 对象: getState(),dispatch(),subscribe()
react-redux:
redux 核心概念(3 个)
action:
默认是对象(同步 action),{type: ‘xxx’, data: value},需要通过对应的 actionCreator 产生,它的值也可以是函数(异步 action),需要引入 redux-thunk 才可以
reducer
根据老的 state 和指定的 action,返回一个新的 state
不能修改老的 state
store
redux 最核心
的管理对象
内部管理着: state
和 reducer
提供方法: getState(),dispatch(action),subscribe(listener)
redux 工作流程
使用 redux 及相关库编码
需要引入的库:
- redux
- react-redux
- redux-thunk
- redux-devtools-extension(这个只在开发时需要)
redux 文件夹:
- action-types.js
- actions.js
- reducers.js
- store.js
组件分 2 类:
ui 组件(components)
: 不使用 redux 相关 PAI容器组件(containers)
: 使用 redux 相关 API