第 1章 React基础 1n 1.1 声明式编程 2n 1.2 React元素 3n 1.3 忘掉所学的一切 5n 1.4 常见误解 7n 1.5 小结 9n 第 2章 整理代码 10n 2.1 JSX 10n 2.1.1 Babel 11n 2.1.2 Hello,World! 12n 2.1.3 DOM元素与React组件 13n 2.1.4 属性 13n 2.1.5 子元素 13n 2.1.6 JSX与HTML的区别 14n 2.1.7 展开属性 17n 2.1.8 模板 17n 2.1.9 常见模式 17n 2.2 ESLint 25n 2.2.1 安装 25n 2.2.2 配置 25n 2.2.3 React插件 28n 2.2.4 Airbnb的配置 29n 2.3 函数式编程基础 30n 2.3.1 一等对象 30n 2.3.2 纯粹性 31n 2.3.3 不可变性 31n 2.3.4 柯里化 32n 2.3.5 组合 33n 2.3.6 函数式编程与UI 33n 2.4 小结 33n 第3章 开发真正可复用的组件 34n 3.1 创建类 34n 3.1.1 createClass工厂方法 35n 3.1.2 继承React.Component 35n 3.1.3 主要区别 36n 3.1.4 无状态函数式组件 40n 3.2 状态 42n 3.2.1 外部库 43n 3.2.2 工作原理 43n 3.2.3 异步 44n 3.2.4 React lumberjack 45n 3.2.5 使用状态 45n 3.3 prop类型 48n 3.4 可复用组件 51n 3.5 可用的风格指南 54n 3.6 小结 58n 第4章 组合一切 59n 4.1 组件间的通信 59n 4.2 容器组件与表现组件模式 62n 4.3 min 67n 4.4 高阶组件 69n 4.5 repose 72n 4.6 函数子组件 76n 4.7 小结 78n 第5章 恰当地获取数据 79n 5.1 数据流 79n 5.1.1 子组件与父组件的通信(回调函数) 81n 5.1.2 公有父组件 82n 5.2 数据获取 83n 5.3 react-refetch 88n 5.4 小结 92n 第6章 为浏览器编写代码 93n 6.1 表单 93n 6.1.1 自由组件 94n 6.1.2 受控组件 98n 6.1.3 JSON schema 100n 6.2 事件 102n 6.3 ref 104n 6.4 动画 108n 6.5 可扩展矢量图形 110n 6.6 小结 113n 第7章 美化组件 114n 7.1 CSS i 114n 7.2 行内样式 116n 7.3 Radium 120n 7.4 CSS模块 124n 7.4.1 Webpack 124n 7.4.2 搭建项目 124n 7.4.3 局部作用域的CSS 126n 7.4.4 原子级CSS模块 131n 7.4.5 React CSS模块 132n 7.5 Styled Component 133n 7.6 小结 136n 第8章 服务端渲染的乐趣与益处 137n 8.1 通用应用 137n 8.2 使用服务端渲染的原因 138n 8.2.1 SEO 138n 8.2.2 通用代码库 139n 8.2.3 性能更强 140n 8.2.4 不要低估复杂度 140n 8.3 基础示例 141n 8.4 数据获取示例 146n 8.5 Next.js 149n 8.6 小结 151n 第9章 提升应用性能 153n 9.1 一致性比较与key属性 153n 9.2 优化手段 158n 9.2.1 是否要更新组件 158n 9.2.2 无状态函数式组件 160n 9.3 常用解决方案 160n 9.3.1 why-did-you-update 161n 9.3.2 在渲染方法中创建函数 162n 9.3.3 props常量 165n 9.3.4 重构与良好设计 167n 9.4 工具与库 172n 9.4.1 不可变性 172n 9.4.2 性能监控工具 173n 9.4.3 Babel插件 174n 9.5 小结 174n 第 10章 测试与调试 176n 10.1 测试的好处 176n 10.2 用Jest轻松测试 178n 10.3 灵活的测试框架Mocha 184n 10.4 React 测试工具 187n 10.5 真实测试示例 189n 10.6 React组件树快照测试 195n 10.7 代码覆盖率工具 198n 10.8 常用测试方案 199n 10.8.1 测试高阶组件 199n 10.8.2 页面对象模式 203n 10.9 Reactkai发者工具 206n 10.10 React错误处理 207n 10.11 小结 209n 第 11章 需要避免的反模式 210n 11.1 用prop初始化状态 210n 11.2 修改状态 212n 11.3 将数组索引作为key 215n 11.4 在DOM元素上展开props对象 218n 11.5 小结 219n 第 12章 未来的行动 220n 12.1 为React做贡献 220n 12.2 分发代码 222n 12.3 发布npm包 224n 12.4 小结 225 |