书籍详情
React.js实战
作者:赵荣娇,刘江虹
出版社:清华大学出版社
出版时间:2019-05-01
ISBN:9787302528739
定价:¥59.00
购买这本书可以去
内容简介
本书旨在帮读者从零开始学习React基础知识,采用“语法”+“示例”的方式,以便于初学者学习和练习,是目前市场上少有的React入门图书。 本书共14章,分为3篇,涵盖的主要内容有:React的前世今生、使用React所需的预备知识(包括npm、webpack、ES6)、React开发环境搭建、React组件、React事件系统、React原理、数据管理、React架构、React服务端渲染、React测试、React性能优化、React+webpack+ES6项目实战(笔记本+购物车)等。 本书内容丰富、实例典型、实用性强,适合有一定的 HTML、CSS、JavaScript 基础、希望全面学习React开发的前端开发人员阅读,也适合希望提高项目开发水平的人员阅读。
作者简介
赵荣娇,飞猪旅行前端开发工程师,擅长CSS、JavaScript和各种框架,参与写作或翻译过多本前端精品图书,喜欢旅行,热爱前端开发,乐于分享。 刘江虹,H3C总部前端项目经理,精通Web前端开发和服务器脚本语言技术,善于把握运用新技术,如React、jQuery、Webpack等,具有3年以上前端开发和技术团队管理经验,技术上一专多能,能够跨平台、跨数据库进行软件开发和项目管理。
目录
目 录
第1章 React的前世今生 1
1.1 刀耕火种的年代 1
1.2 Web应用的出现 2
1.3 React的诞生 2
1.4 npm 3
1.4.1 什么是npm 3
1.4.2 理解npm scripts 3
1.4.3 dependencies和devDependencies 5
1.5 webpack 5
1.5.1 为什么需要webpack 6
1.5.2 webpack入口和出口 7
1.5.3 webpack loader 8
1.5.4 webpack plugins 9
1.6 ES6 10
1.6.1 函数的扩展 10
1.6.2 对象的扩展 13
1.6.3 class 15
第2章 初探React 17
2.1 React带来的变化 17
2.1.1 React的声明式编程 17
2.1.2 React的组件化思想 18
2.1.3 React的虚拟DOM 19
2.2 本地环境搭建 19
2.2.1 Node与npm安装 20
2.2.2 打造属于你的编辑器 21
2.3 编写个React应用 22
2.4 与传统jQuery对比 25
2.5 React调试 28
2.5.1 安装Chrome插件 28
2.5.2 Chrome插件的使用 29
第3章 React组件 32
3.1 理解组件化思想 32
3.2 组件之间的通信 32
3.2.1 props 33
3.2.2 state 34
3.2.3 父子组件通信 36
3.2.4 同级组件通信 39
3.3 组件生命周期 41
3.3.1 组件的挂载 41
3.3.2 组件的更新 43
3.3.3 组件的卸载 46
3.3.4 总览组件生命周期 48
第4章 漫谈React事件系统 50
4.1 JavaScript事件机制 50
4.2 剖析React事件系统 54
4.2.1 组件上绑定事件 54
4.2.2 在构造函数中绑定事件 56
4.2.3 箭头函数绑定事件 57
4.3 实战:实现登录界面(事件系统演练) 58
第5章 深入React原理 62
5.1 JSX 62
5.1.1 JSX语法 64
5.1.2 JSX使用样式 65
5.2 dom-diff 66
5.3 setState 68
第6章 React组件编写实战 75
6.1 React组件写法 75
6.1.1 React.createClass写法 75
6.1.2 React.Component写法 76
6.1.3 无状态函数写法 78
6.2 React组件分类 79
6.2.1 木偶组件和智能组件 79
6.2.2 高阶组件 83
第7章 Redux数据管理 89
7.1 总览React数据管理 89
7.1.1 Flux的出现 89
7.1.2 Mobx 95
7.1.3 Redux应运而生 95
7.2 Redux核心概念 96
7.2.1 store 96
7.2.2 action 98
7.2.3 reducer 100
7.2.4 connect 102
7.2.5 总结 103
7.3 Redux生态 104
7.3.1 redux middleware 104
7.3.2 redux-logger 104
7.3.3 redux-thunk 107
7.3.4 redux-saga 111
7.4 Redux进阶 116
7.4.1 理解middleware原理 116
7.4.2 手动实现middleware 120
第8章 React架构 121
8.1 文件结构 121
8.2 CSS方案 122
8.2.1 CSS Modules 122
8.2.2 局部样式 123
8.2.3 全局作用域 126
8.2.4 组合样式 126
8.2.5 PostCSS 129
8.3 状态管理 132
8.3.1 如何定义state 132
8.3.2 你可能不需要Redux 132
8.3.3 再来说说Redux 133
8.4 路由管理 135
第9章 React服务端渲染 139
9.1 服务端渲染的意义 139
9.2 理解服务端渲染原理 141
9.3 实战:动手实现服务端渲染 144
9.4 服务器渲染的思考 156
第10章 编写测试 157
10.1 测试驱动开发 157
10.1.1 测试驱动开发的好处 157
10.1.2 测试驱动开发现状 158
10.1.3 定义属于自己的测试原则 159
10.2 React测试工具 160
10.2.1 Jest 160
10.2.2 Enzyme 161
10.3 动手测试我们的代码 162
10.3.1 使用Jest测试 162
10.3.2 使用Emzyme测试 167
10.4 测试之外 179
10.4.1 PropTypes 179
10.4.2 Flow 183
10.4.3 TypeScript 185
第11章 性能优化 190
11.1 不要过早优化 190
11.2 React性能查看工具 191
11.3 React优化手段 192
11.3.1 单个React组件性能优化 192
11.3.2 shoudComponentUpdate 193
11.3.3 immutable(ImmutableJS) 194
11.4 性能优化小结 197
第12章 Hooks 198
12.1 为什么引入Hooks 198
12.2 Hooks的使用方法 200
12.2.1 useState 200
12.2.2 useEffect 201
12.2.3 useReducer 202
12.2.4 Hooks使用限制 203
12.3 Hooks 实践 205
12.3.1 与状态有关的逻辑重用 205
12.3.2 DOM操作副作用的修改 208
12.3.3 Hooks互相引用 209
12.3.4 处理动画 211
12.3.5 模拟生命周期 215
12.4 Hooks小结 216
第13章 React实战:React webpack ES6实现简易笔记本 217
13.1 配置环境 217
13.1.1 前台准备 217
13.1.2 服务端准备 218
13.1.3 创建数据库 220
13.1.4 连接数据库 223
13.2 引入antd 229
13.3 改写笔记本样式 233
13.4 案例小结 238
第14章 React实战:React webpack ES6实现购物车 239
14.1 前期准备 239
14.1.1 环境准备 239
14.1.2 编码规范ESLint 240
14.1.3 项目结构 246
14.2 组件设计 247
14.2.1 购物车框架 247
14.2.2 商品组件和商品列表 251
14.2.3 商品搜索 259
14.2.4 购物车 261
14.3 案例小结 265
第1章 React的前世今生 1
1.1 刀耕火种的年代 1
1.2 Web应用的出现 2
1.3 React的诞生 2
1.4 npm 3
1.4.1 什么是npm 3
1.4.2 理解npm scripts 3
1.4.3 dependencies和devDependencies 5
1.5 webpack 5
1.5.1 为什么需要webpack 6
1.5.2 webpack入口和出口 7
1.5.3 webpack loader 8
1.5.4 webpack plugins 9
1.6 ES6 10
1.6.1 函数的扩展 10
1.6.2 对象的扩展 13
1.6.3 class 15
第2章 初探React 17
2.1 React带来的变化 17
2.1.1 React的声明式编程 17
2.1.2 React的组件化思想 18
2.1.3 React的虚拟DOM 19
2.2 本地环境搭建 19
2.2.1 Node与npm安装 20
2.2.2 打造属于你的编辑器 21
2.3 编写个React应用 22
2.4 与传统jQuery对比 25
2.5 React调试 28
2.5.1 安装Chrome插件 28
2.5.2 Chrome插件的使用 29
第3章 React组件 32
3.1 理解组件化思想 32
3.2 组件之间的通信 32
3.2.1 props 33
3.2.2 state 34
3.2.3 父子组件通信 36
3.2.4 同级组件通信 39
3.3 组件生命周期 41
3.3.1 组件的挂载 41
3.3.2 组件的更新 43
3.3.3 组件的卸载 46
3.3.4 总览组件生命周期 48
第4章 漫谈React事件系统 50
4.1 JavaScript事件机制 50
4.2 剖析React事件系统 54
4.2.1 组件上绑定事件 54
4.2.2 在构造函数中绑定事件 56
4.2.3 箭头函数绑定事件 57
4.3 实战:实现登录界面(事件系统演练) 58
第5章 深入React原理 62
5.1 JSX 62
5.1.1 JSX语法 64
5.1.2 JSX使用样式 65
5.2 dom-diff 66
5.3 setState 68
第6章 React组件编写实战 75
6.1 React组件写法 75
6.1.1 React.createClass写法 75
6.1.2 React.Component写法 76
6.1.3 无状态函数写法 78
6.2 React组件分类 79
6.2.1 木偶组件和智能组件 79
6.2.2 高阶组件 83
第7章 Redux数据管理 89
7.1 总览React数据管理 89
7.1.1 Flux的出现 89
7.1.2 Mobx 95
7.1.3 Redux应运而生 95
7.2 Redux核心概念 96
7.2.1 store 96
7.2.2 action 98
7.2.3 reducer 100
7.2.4 connect 102
7.2.5 总结 103
7.3 Redux生态 104
7.3.1 redux middleware 104
7.3.2 redux-logger 104
7.3.3 redux-thunk 107
7.3.4 redux-saga 111
7.4 Redux进阶 116
7.4.1 理解middleware原理 116
7.4.2 手动实现middleware 120
第8章 React架构 121
8.1 文件结构 121
8.2 CSS方案 122
8.2.1 CSS Modules 122
8.2.2 局部样式 123
8.2.3 全局作用域 126
8.2.4 组合样式 126
8.2.5 PostCSS 129
8.3 状态管理 132
8.3.1 如何定义state 132
8.3.2 你可能不需要Redux 132
8.3.3 再来说说Redux 133
8.4 路由管理 135
第9章 React服务端渲染 139
9.1 服务端渲染的意义 139
9.2 理解服务端渲染原理 141
9.3 实战:动手实现服务端渲染 144
9.4 服务器渲染的思考 156
第10章 编写测试 157
10.1 测试驱动开发 157
10.1.1 测试驱动开发的好处 157
10.1.2 测试驱动开发现状 158
10.1.3 定义属于自己的测试原则 159
10.2 React测试工具 160
10.2.1 Jest 160
10.2.2 Enzyme 161
10.3 动手测试我们的代码 162
10.3.1 使用Jest测试 162
10.3.2 使用Emzyme测试 167
10.4 测试之外 179
10.4.1 PropTypes 179
10.4.2 Flow 183
10.4.3 TypeScript 185
第11章 性能优化 190
11.1 不要过早优化 190
11.2 React性能查看工具 191
11.3 React优化手段 192
11.3.1 单个React组件性能优化 192
11.3.2 shoudComponentUpdate 193
11.3.3 immutable(ImmutableJS) 194
11.4 性能优化小结 197
第12章 Hooks 198
12.1 为什么引入Hooks 198
12.2 Hooks的使用方法 200
12.2.1 useState 200
12.2.2 useEffect 201
12.2.3 useReducer 202
12.2.4 Hooks使用限制 203
12.3 Hooks 实践 205
12.3.1 与状态有关的逻辑重用 205
12.3.2 DOM操作副作用的修改 208
12.3.3 Hooks互相引用 209
12.3.4 处理动画 211
12.3.5 模拟生命周期 215
12.4 Hooks小结 216
第13章 React实战:React webpack ES6实现简易笔记本 217
13.1 配置环境 217
13.1.1 前台准备 217
13.1.2 服务端准备 218
13.1.3 创建数据库 220
13.1.4 连接数据库 223
13.2 引入antd 229
13.3 改写笔记本样式 233
13.4 案例小结 238
第14章 React实战:React webpack ES6实现购物车 239
14.1 前期准备 239
14.1.1 环境准备 239
14.1.2 编码规范ESLint 240
14.1.3 项目结构 246
14.2 组件设计 247
14.2.1 购物车框架 247
14.2.2 商品组件和商品列表 251
14.2.3 商品搜索 259
14.2.4 购物车 261
14.3 案例小结 265
猜您喜欢