目录
自述
介绍
动机
核心概念
三大原则
先前技术
生态系统
示例
基础
Action
Reducer
Store
数据流
搭配 React
示例:Todo List
高级
异步 Action
异步数据流
Middleware
搭配 React Router
示例:Reddit API
下一步
技巧
迁移到 Redux
使用对象展开运算符
减少样板代码
服务端渲染
编写测试
计算衍生数据
实现撤销重做
子应用隔离
组织 Reducer
Reducer 基础概念
Reducer 基础结构
Reducer 逻辑拆分
Reducer 重构示例
combineReducers 用法
combineReducers 进阶
State 范式化
管理范式化数据
Reducer 逻辑复用
不可变更新模式
初始化 State
常见问题
综合
Reducer
组织 State
创建 Store
Action
代码结构
性能
React Redux
其它
排错
词汇表
API 文档
createStore
Store
combineReducers
applyMiddleware
bindActionCreators
compose
react-redux 文档
API
排错
微信小程序
百度小程序
本書使用 GitBook 釋出
常见问题
Redux 常见问题
目录
综合
何时使用 Redux ?
Redux 只能搭配 React 使用?
Redux 需要特殊的编译工具支持吗?
Reducer
如何在 reducer 之间共享 state ? combineReducers 是必须的吗?
处理 action 必须用 switch 语句吗?
组织 State
必须将所有 state 都维护在 Redux 中吗? 可以用 React 的 setState() 方法吗?
可以将 store 的 state 设置为函数、promise或者其它非序列化值吗?
如何在 state 中组织嵌套及重复数据?
创建 Store
可以创建多个 store 吗,应该这么做吗?能在组件中直接引用 store 并使用吗?
在 store enhancer 中可以存在多个 middleware 链吗? 在 middleware 方法中,next 和 dispatch 之间区别是什么?
怎样只订阅 state 的一部分变更?如何将分发的 action 作为订阅的一部分?
Action
为何 type 必须是字符串,或者至少可以被序列化? 为什么 action 类型应该作为常量?
是否存在 reducer 和 action 之间的一对一映射?
怎样表示类似 AJAX 请求的 “副作用”?为何需要 “action 创建函数”、“thunks” 以及 “middleware” 类似的东西去处理异步行为?
是否应该在 action 创建函数中连续分发多个 action?
代码结构
文件结构应该是什么样?项目中该如何对 action 创建函数和 reducer 分组? selector 又该放在哪里?
如何将逻辑在 reducer 和 action 创建函数之间划分? “业务逻辑” 应该放在哪里?
性能
考虑到性能和架构, Redux “可扩展性” 如何?
每个 action 都调用 “所有的 reducer” 会不会很慢?
在 reducer 中必须对 state 进行深拷贝吗?拷贝 state 不会很慢吗?
怎样减少 store 更新事件的数量?
仅有 “一个 state 树” 会引发内存问题吗?分发多个 action 会占用内存空间吗?
React Redux
为何组件没有被重新渲染、或者 mapStateToProps 没有运行?
为何组件频繁的重新渲染?
怎样使 mapStateToProps 执行更快?
为何不在被连接的组件中使用 this.props.dispatch ?
应该只连接到顶层组件吗,或者可以在组件树中连接到不同组件吗?
其它
有 “真实存在” 且很庞大的 Redux 项目吗?
如何在 Redux 中实现鉴权?
results matching "
"
No results matching "
"