这些资源你可能感兴趣
《深入浅出React和Redux》,本书由浅入深地介绍如何用React和Redux构建现代化的前端项目,产出高质量的前端代码。共有12章。第1章介绍React应用开发的特点。第2章介绍开发高质量React组件的原则,详细介绍React组件的生命周期和数据管理方式。第3章由Flux引出Redux框架,比较了不同框架的优劣。第4章开发了一个Todo应用,介绍将React和Redux结合的方法。第5章通过对Todo应用的性能优化,介绍提高React组件渲染性的方法。第6章介绍高阶组件和“以函数为子组件”的模式。第7章介绍如何在React和Redux的环境中实现和服务器通信。第8章介绍针对React和Redux的单元测试技巧。第9章介绍创建中间件和StoreEnhancer的技巧。第10章介绍在React中实现动画的技巧。第11章介绍如何创建多页面路由以及代码分片技巧。第12章介绍同构的概念和方法,使得React组件能够在服务器端和浏览器端进行渲染。
作者简介
程墨,资历架构师,曾任职于摩托罗拉、雅虎和微软,云鸟配送平台联合创始人,目前服务于美国视频服务公司Hulu。
目录
前言
第1章React新的前端思维方式
1.1初始化一个React项目
1.2增加一个新的React组件
1.2.1JSX
1.2.2JSX是进步还是倒退
1.3分解React应用
1.4React的工作方式
1.4.1jQuery如何工作
1.4.2React的理念
1.4.3VirtualDOM
1.4.4React工作方式的优点
1.5本章小结
第2章设计高质量的React组件
2.1易于维护组件的设计要素
2.2React组件的数据
2.2.1React的prop
2.2.2React的state
2.2.3prop和state的对比
2.3组件的生命周期
2.3.1装载过程
2.3.2更新过程
2.3.3卸载过程
2.4组件向外传递数据
2.5React组件state和prop的局限
2.6本章小结
第3章从Flux到Redux
3.1.1MVC框架的缺陷
3.1.2Flux应用
3.1.3Flux的优势
3.1.4Flux的不足
3.2Redux
3.2.1Redux的基本原则
3.2.2Redux实例
3.2.3容器组件和傻瓜组件
3.2.4组件Context
3.2.5React-Redux
3.3本章小结
第4章模块化React和Redux应用
4.1模块化应用要点
4.2代码文件的组织方式
4.2.1按角色组织
4.2.2按功能组织
4.3模块接口
4.4状态树的设计
4.4.1一个状态节点只属于一个模块
4.4.2避免冗余数据
4.4.3树形结构扁平
4.5Todo应用实例
4.5.1Todo状态设计
4.5.2action构造函数
4.5.3组合reducer
4.5.4Todo视图
4.5.5样式
4.5.6不使用
4.6开发辅助工具
4.6.1Chrome扩展包
4.6.2redux-immutable-state-invariant辅助包
4.6.3工具应用
4.7本章小结
第5章React组件的性能优化
5.1单个React组件的性能优化
5.1.1发现浪费的渲染时间
5.1.2性能优化的时机
5.1.3React-Redux的should-ComponentUpdate实现
5.2多个React组件的性能优化
5.2.1React的调和(Reconciliation)过程
5.2.2Key的用法
5.3用reselect提高数据获取性能
5.3.1两阶段选择过程
5.3.2范式化状态树
5.4本章小结
第6章React高级组件
6.1高阶组件
6.1.1代理方式的高阶组件
6.1.2继承方式的高阶组件
6.1.3高阶组件的显示名
6.1.4曾经的ReactMixin
6.2以函数为子组件
6.2.1实例CountDown
6.2.2性能优化问题
6.3本章小结
第7章Redux和服务器通信
7.1React组件访问服务器
7.1.1代理功能访问
7.1.2React组件访问服务器的生命周期
7.1.3React组件访问服务器的优缺点
7.2Redux访问服务器
7.2.1redux-thunk中间件
7.2.2异步action对象
7.2.3异步操作的模式
7.2.4异步操作的中止
7.3Redux异步操作的其他方法
7.3.1如何挑选异步操作方式
7.3.2利用Promise实现异步操作
7.4本章小结
第8章单元测试
8.1单元测试的原则
8.2单元测试环境搭建
8.2.1单元测试框架
8.2.2单元测试代码组织
8.2.3辅助工具
8.3单元测试实例
8.3.1action构造函数测试
8.3.2异步action构造函数测试
8.3.3reducer测试
8.3.4无状态React组件测试
8.3.5被连接的React组件测试
8.4本章小结
第9章扩展Redux
9.2中间件
9.1.1中间件接口
9.1.2使用中间件
9.1.3Promise中间件
9.1.4中间件开发原则
9.2StoreEnhancer
9.2.1增强器接口
9.2.2增强器实例reset
9.3本章小结
第10章动画
10.1动画的实现方式
10.1.1CSS3方式
10.1.2脚本方式
10.2ReactCSSTransitionGroup
10.2.1Todo应用动画
10.2.2ReactCSSTransitionGroup规则
10.3React-Motion动画库
10.3.1React-Motion的设计原则
10.3.2Todo应用动画
10.4本章小结
第11章多页面应用
11.1单页应用
11.2React-Router
11.2.1路由
11.2.2路由链接和嵌套
11.2.3默认链接
11.2.4集成
11.3代码分片
11.3.1弹射和配置we
11.3.2动态加载分片
11.3.3动态更新Store的reducer和状态
11.4本章小结
第12章同构
12.1服务器端渲染vs浏览器端渲染
12.2构建渲染动态内容服务器
12.2.1设置Node.js和Express
12.2.2热加载
12.3React同构
12.3.1React服务器端渲染HTML
12.3.2脱水和注水
12.3.3服务器端ReduxStore
12.3.4支持服务器和浏览器获取共同数据源
12.3.5服务器端路由
12.4同构实例
12.5本章小结
结语
本书评论