第1章 初识React
1.1 初识React
1.1.1 本书的受众
1.1.2 工具说明
1.1.3 谁在使用React
1.2 React不能做什么
1.3 虚拟DOM
1.3.1 DOM
1.3.2 虚拟DOM
1.3.3 更新与差异比对
1.3.4 虚拟DOM:渴求速度
1.4 组件:React的基本单元
1.4.1 组件概览
1.4.2 React中的组件:封装与复用
1.5 团队的React
1.6 小结
第2章
2.1 React组件介绍
2.1.1 理解应用数据
2.1.2 多组件:组合关系和父子关系
2.1.3 建立组件关系
2.2 用React创建组件
2.2.1 创建React元素
2.2.2 渲染首个组件
2.2.3 创建React组件
2.2.4 创建React类
2.2.5 render方法
2.2.6 通过PropTypes校验属性
2.3 组件的一生
2.3.1 React的状态
2.3.2 设定初始状态
2.4 认识JSX
2.4.1 使用JSX创建组件
2.4.2 JSX的好处以及JSX与HTML的差别
2.5 小结
第二部分 React中的组件和数据
第3章 React中的数据和数据流
3.1 状态介绍
3.1.1 什么是状态
3.1.2 可变状态与不可变状态
3.2 React中的状态
3.2.1 React中的可变状态:组件状态
3.2.2 React中的不可变状态:属性
3.2.3 使用属性:PropTypes和默认属性
3.2.4 无状态函数组件
3.3 组件通信
3.4 单向数据流
3.5 小结
第4章 React中的渲染和生命周期方法
4.1 搭建Letters Social仓库
4.1.1 获取源代码
4.1.2 应该使用哪个版本的Node
4.1.3 关于工具和CSS的注意事项
4.1.4 部署
4.1.5 API服务器和数据库
4.1.6 运行应用程序
4.2 渲染过程和生命周期方法
4.2.1 生命周期方法概览
4.2.2 生命周期方法的类型
4.2.3 初始方法和“将执行”方法
4.2.4 挂载组件
4.2.5 更新方法
4.2.6 卸载方法
4.2.7 捕捉错误
4.3 开始创建Letters Social
4.4 小结
第5章 在React中使用表单
5.1 在Letters Social中创建帖子
5.1.1 数据需求
5.1.2 组件概览与层级
5.2 React中的表单
5.2.1 开始使用表单
5.2.2 表单元素和事件
5.2.3 更新表单状态
5.2.4 受控和非受控组件
5.2.5 表单验证与清理
5.3 创建新帖子
5.4 小结
第6章 将第三方库与React集成
6.1 向Letters Social API发送帖子
6.2 用地图增强组件
6.2.1 使用refs创建DisplayMap组件
6.2.2 创建LocationTypeAhead组件
6.2.3 更新CreatePost,给帖子添加地图
6.3 小结
第7章 React的路由
7.1 什么是路由
7.2 创建路由器
7.2.1 组件路由
7.2.2 创建组件
7.2.3 开始构建组件
7.2.4 匹配URL路径和参数化路由
7.2.5 向Router组件添加路由
7.3 小结
第8章 再谈路由以及集成Firebase
8.1 使用路由器
8.1.1 创建帖子页面
8.1.2 创建组件
8.1.3 创建组件
8.2 集成Firebase
8.3 小结
第9章 测试React组件
9.1 测试的类型
9.2 用Jest、Enzyme和React-test-render测试React组件
9.3 编写第一个测试
9.3.1 开始使用Jest
9.3.2 测试无状态函数组件
9.3.3 不使用Enzyme测试CreatePost组件
9.3.4 测试覆盖率
9.4 小结
第三部分 React应用架构
第10章 Redux应用架构
10.1 Flux应用架构
10.1.1 初识Redux:Flux的一个变种
10.1.2 为Redux做准备
10.2 在Redux中创建action
10.2.1 定义action类型
10.2.2 在Redux中创建action
10.2.3 创建Redux store并派发action
10.2.4 异步action和中间件
10.2.5 要不要使用Redux
10.2.6 测试action
10.2.7 创建用于崩溃报告的自定义Redux中间件
10.3 小结
第11章 Redux进阶及Redux与React集成
11.1 reducer决定状态应该如何改变
11.1.1 状态的结构与初始状态
11.1.2 设置reducer来响应传入的action
11.1.3 将reducer合并到store
11.1.4 测试reducer
11.2 将React和Redux结合起来
11.2.1 容器组件与展示组件
11.2.2 使用将组件连接到Redux store
11.2.3 将action绑定到组件的事件处理器上
11.2.4 更新测试
11.3 小结
第12章 服务器端React与集成React Router
12.1 什么是服务