译者序
前言
第1章 Hello World
1.1 设置
1.2 Hello React World
1.3 刚才发生了什么
1.4 React.DOM.*
1.5 特殊DOM属性
1.6 React DevTools浏览器扩展
1.7 下一步:自定义组件
第2章 组件的生命周期
2.1 基础
2.2 属性
2.3 propTypes
2.4 state
2.5 带状态的文本框组件
2.6 关于DOM事件的说明
2.6.1 传统的事件处理
2.6.2 React的事件处理
2.7 props与state
2.8 在初始化state时使用props:一种反模式
2.9 从外部访问组件
2.10 中途改变属性
2.11 生命周期方法
2.12 生命周期示例:输出日志记录
2.13 生命周期示例:使用mixin
2.14 生命周期示例:使用子组件
2.15 性能优化:避免组件更新
2.16 PureRenderMixin
第3章 Excel:一个出色的表格组件
3.1 构造数据
3.2 表头循环
3.3 消除控制台的警告信息
3.4 添加内容
3.5 排序
3.6 排序的视觉提示
3.7 编辑数据
3.7.1 可编辑单元格
3.7.2 输入字段的单元格
3.7.3 保存
3.7.4 结论与虚拟DOM Diff算法
3.8 搜索
3.8.1 状态与界面
3.8.2 筛选内容
3.8.3 如何改进搜索功能
3.9 即时回放
3.9.1 如何改进回放功能
3.9.2 有另一种实现方法吗
3.10 下载表格数据
第4章 JSX
4.1 Hello JSX
4.2 转译JSX
4.3 Babel
4.4 客户端
4.5 关于JSX转换
4.6 在JSX中使用JavaScript
4.7 在JSX中使用空格
4.8 在JSX中使用注释
4.9 HTML实体
4.10 展开属性
4.11 在JSX中返回多个节点
4.12 JSX和HTML的区别
4.12.1 class和for属性不能用了吗
4.12.2 style属性值是一个对象
4.12.3 闭合标签
4.12.4 用驼峰法命名属性
4.13 JSX 和表单
4.14 使用JSX实现Excel组件
第5章 为应用开发做准备
5.1 一个模板应用
5.1.1 文件和目录
5.1.2 index.html
5.1.3 CSS
5.1.4 JavaScript
5.1.5 更现代化的JavaScript
5.2 安装必备工具
5.2.1 Node.js
5.2.2 Browserify
5.2.3 Babel
5.2.4 React相关
5.3 开始构建
5.3.1 转译JavaScript
5.3.2 打包JavaScript
5.3.3 打包CSS
5.3.4 大功告成
5.3.5 Windows版本
5.3.6 在开发过程中构建
5.4 发布
5.5 更进一步
第6章 构建应用
6.1 Whinepad v. 0.0.1
6.1.1 基本设置
6.1.2 开始编写代码
6.2 组件
6.2.1 设置
6.2.2 组件发现工具
6.2.3 <Button>组件
6.2.4 Button.css
6.2.5 Button.js
6.2.6 表单
6.2.7 <Suggest>
6.2.8 <Rating>组件
6.2.9 <Formlnput>“工厂组件”
6.2.10 <Form>
6.2.11 <Actions>
6.2.12 对话框
6.3 应用配置
6.4 <Excel>:改进的新版本
6.5 <Whinepad>
6.6 总结
第7章 lint、Flow、测试与复验
7.1 package.json
7.1.1 配置Babel
7.1.2 脚本
7.2 ESLint
7.2.1 安装
7.2.2 运行
7.2.3 规则列表
7.3 Flow
7.3.1 安装
7.3.2 运行
7.3.3 注册类型检查
7.3.4 修复<Button>
7.3.5 app.js
7.3.6 关于props和state类型检查的更多内容
7.3.7 导出/导入类型
7.3.8 类型转换
7.3.9 invariant
7.4 测试
7.4.1 安装
7.4.2 首个测试
7.4.3 首个React测试
7.4.4 测试<Button>组件
7.4.5 测试<Actions>组件
7.4.6 更多模拟交互
7.4.7 测试完整的交互
7.4.8 代码覆盖率
第8章 Flux
8.1 理念
8.2 回顾Whinepad
8.3 Store
8.3.1 Store事件
8.3.2 在<Whtnepad>中使用Store
8.3.3 在<Excel>中使用Store
8.3.4 在<Form>中使用Store
8.3.5 界定
8.4 Action
8.4.1 CRUD Action
8.4.2 搜索与排序
8.4.3 在<Whinepad>中使用Action
8.4.4 在<Excel>中使用Action
8.5 Flux回顾
8.6 immutable
8.6.1 immutable存储数据
8.6.2 immutable数据操作
关于作者
关于封面