展开全部

主编推荐语

全面讲述React技术栈的原创图书,pure render专栏主创倾力打造,覆盖React、Flux、Redux及可视化等内容。

内容简介

本书从几个维度去介绍React。一是作为View库,它怎么实现组件化,以及它背后的实现原理。二是扩展到Flux应用架构及重要的衍生品Redux,它们怎么与React结合做应用开发。三是对React与schmerver的碰撞产生的一些思考。四是讲述它在可视化方面的优势与劣势。本书适合有一定经验的前端开发人员阅读。

目录

  • 版权信息
  • 前言
  • 本书目的
  • 阅读建议
  • 代码规范
  • 保留英文名词
  • 读者反馈
  • 示例代码下载
  • 致谢
  • 第1章 初入React世界
  • 1.1 React简介
  • 1.1.1 专注视图层
  • 1.1.2 Virtual DOM
  • 1.1.3 函数式编程
  • 1.2 JSX语法
  • 1.2.1 JSX的由来
  • 1.2.2 JSX基本语法
  • 1.3 React组件
  • 1.3.1 组件的演变
  • 1.3.2 React组件的构建
  • 1.4 React数据流
  • 1.4.1 state
  • 1.4.2 props
  • 1.5 React生命周期
  • 1.5.1 挂载或卸载过程
  • 1.5.2 数据更新过程
  • 1.5.3 整体流程
  • 1.6 React与DOM
  • 1.6.1 ReactDOM
  • 1.6.2 ReactDOM的不稳定方法
  • 1.6.3 refs
  • 1.6.4 React之外的DOM操作
  • 1.7 组件化实例:Tabs组件
  • 1.8 小结
  • 第2章 漫谈React
  • 2.1 事件系统
  • 2.1.1 合成事件的绑定方式
  • 2.1.2 合成事件的实现机制
  • 2.1.3 在React中使用原生事件
  • 2.1.4 合成事件与原生事件混用
  • 2.1.5 对比React合成事件与JavaScript原生事件
  • 2.2 表单
  • 2.2.1 应用表单组件
  • 2.2.2 受控组件
  • 2.2.3 非受控组件
  • 2.2.4 对比受控组件和非受控组件
  • 2.2.5 表单组件的几个重要属性
  • 2.3 样式处理
  • 2.3.1 基本样式设置
  • 2.3.2 CSS Modules
  • 2.4 组件间通信
  • 2.4.1 父组件向子组件通信
  • 2.4.2 子组件向父组件通信
  • 2.4.3 跨级组件通信
  • 2.4.4 没有嵌套关系的组件通信
  • 2.5 组件间抽象
  • 2.5.1 mixin
  • 2.5.2 高阶组件
  • 2.5.3 组合式组件开发实践
  • 2.6 组件性能优化
  • 2.6.1 纯函数
  • 2.6.2 PureRender
  • 2.6.3 Immutable
  • 2.6.4 key
  • 2.6.5 react-addons-perf
  • 2.7 动画
  • 2.7.1 CSS动画与JavaScript动画
  • 2.7.2 玩转React Transition
  • 2.7.3 缓动函数
  • 2.8 自动化测试
  • 2.8.1 Jest
  • 2.8.2 Enzyme
  • 2.8.3 自动化测试
  • 2.9 组件化实例:优化Tabs组件
  • 2.10 小结
  • 第3章 解读React源码
  • 3.1 初探React源码
  • 3.2 VirtualDOM模型
  • 3.2.1 创建React元素
  • 3.2.2 初始化组件入口
  • 3.2.3 文本组件
  • 3.2.4 DOM标签组件
  • 3.2.5 自定义组件
  • 3.3 生命周期的管理艺术
  • 3.3.1 初探React生命周期
  • 3.3.2 详解React生命周期
  • 3.3.3 无状态组件
  • 3.4 解密setState机制
  • 3.4.1 setState异步更新
  • 3.4.2 setState循环调用风险
  • 3.4.3 setState调用栈
  • 3.4.4 初识事务
  • 3.4.5 解密setState
  • 3.5 diff算法
  • 3.5.1 传统diff算法
  • 3.5.2 详解diff
  • 3.6 ReactPatch方法
  • 3.7 小结
  • 第4章 认识Flux架构模式
  • 4.1 React独立架构
  • 4.2 MV* 与Flux
  • 4.2.1 MVC/MVVM
  • 4.2.2 Flux的解决方案
  • 4.3 Flux基本概念
  • 4.4 Flux应用实例
  • 4.4.1 初始化目录结构
  • 4.4.2 设计store
  • 4.4.3 设计actionCreator
  • 4.4.4 构建controller-view
  • 4.4.5 重构view
  • 4.4.6 添加单元测试
  • 4.5 解读Flux
  • 4.5.1 Flux核心思想
  • 4.5.2 Flux的不足
  • 4.6 小结
  • 第5章 深入Redux应用架构
  • 5.1 Redux简介
  • 5.1.1 Redux是什么
  • 5.1.2 Redux三大原则
  • 5.1.3 Redux核心API
  • 5.1.4 与React绑定
  • 5.1.5 增强Flux的功能
  • 5.2 Redux middleware
  • 5.2.1 middleware的由来
  • 5.2.2 理解middleware机制
  • 5.3 Redux异步流
  • 5.3.1 使用middleware简化异步请求
  • 5.3.2 使用middleware处理复杂异步流
  • 5.4 Redux与路由
  • 5.4.1 React Router
  • 5.4.2 React Router Redux
  • 5.5 Redux与组件
  • 5.5.1 容器型组件
  • 5.5.2 展示型组件
  • 5.5.3 Redux中的组件
  • 5.6 Redux应用实例
  • 5.6.1 初始化Redux项目
  • 5.6.2 划分目录结构
  • 5.6.3 设计路由
  • 5.6.4 让应用跑起来
  • 5.6.5 优化构建脚本
  • 5.6.6 添加布局文件
  • 5.6.7 准备首页的数据
  • 5.6.8 连接Redux
  • 5.6.9 引入Redux Devtools
  • 5.6.10 利用middleware实现Ajax请求发送
  • 5.6.11 请求本地的数据
  • 5.6.12 页面之间的跳转
  • 5.6.13 优化与改进
  • 5.6.14 添加单元测试
  • 5.7 小结
  • 第6章 Redux高阶运用
  • 6.1 高阶reducer
  • 6.1.1 reducer的复用
  • 6.1.2 reducer的增强
  • 6.2 Redux与表单
  • 6.2.1 使用redux-form-utils减少创建表单的冗余代码
  • 6.2.2 使用redux-form完成表单的异步验证
  • 6.2.3 使用高阶reducer为现有模块引入表单功能
  • 6.3 Redux CRUD实战
  • 6.3.1 准备工作
  • 6.3.2 使用Table组件完成“查”功能
  • 6.3.3 使用Modal组件完成“增”与“改”
  • 6.3.4 巧用Modal实现数据的删除确认
  • 6.3.5 善用promise玩转Redux异步事件流
  • 6.4 Redux性能优化
  • 6.4.1 Reselect
  • 6.4.2 Immutable Redux
  • 6.4.3 Reducer性能优化
  • 6.5 解读Redux
  • 6.5.1 参数归一化
  • 6.5.2 初始状态及getState
  • 6.5.3 subscribe
  • 6.5.4 dispatch
  • 6.5.5 replaceReducer
  • 6.6 解读react-redux
  • 6.6.1 Provider
  • 6.6.2 connect
  • 6.6.3 代码热替换
  • 6.7 小结
  • 第7章 React服务端渲染
  • 7.1 React与服务端模板
  • 7.1.1 什么是服务端渲染
  • 7.1.2 react-view
  • 7.1.3 react-view源码解读
  • 7.2 React服务端渲染
  • 7.2.1 玩转Node.js
  • 7.2.2 React-Router和Koa-Router统一
  • 7.2.3 同构数据处理的探讨
  • 7.3 小结
  • 第8章 玩转React可视化
  • 8.1 React结合Canvas和SVG
  • 8.1.1 Canvas与SVG
  • 8.1.2 在React中的Canvas
  • 8.1.3 React中的SVG
  • 8.2 React与可视化组件
  • 8.2.1 包装已有的可视化库
  • 8.2.2 使用D3绘制UI部分
  • 8.2.3 使用React绘制UI部分
  • 8.3 Recharts组件化的原理
  • 8.3.1 声明式的标签
  • 8.3.2 贴近原生的配置项
  • 8.3.3 接口式的API
  • 8.4 小结
  • 附录A 开发环境
  • A.1 运行开发环境:Node.js
  • A.2 ES6 编译工具:Babel
  • A.3 CSS预处理器:Sass
  • A.4 测试环境:Karma
  • A.5 工程构建工具:webpack
  • A.5.1 开发环境配置
  • A.5.2 线上环境配置
  • A.6 安装React环境
  • A.7 小结
  • 附录B 编码规范
  • B.1 使用ESLint
  • B.2 使用EditorConfig
  • B.3 小结
  • 附录C Koa middleware
  • C.1 generator
  • C.2 middleware原理分析
  • 看完了
展开全部

评分及书评

评分不足
2个评分

出版方

人民邮电出版社·图灵出品

图灵社区成立于2005年6月,由人民邮电出版社投资控股,以策划出版高质量的科技书籍为核心业务,主要出版领域包括计算机、电子电气、数学统计、科普等,通过引进国际高水平的教材、专著,以及发掘国内优秀原创作品等途径,为目标读者提供一流的内容。