第1章 例说Vue.js 1
1.1 插值 5
1.2 数据绑定 6
1.3 样式绑定 9
1.4 过滤器 12
第2章 工程化的Vue.js开发 15
2.1 脚手架vue-cli 16
2.2 深入vue-cli的工程模板 19
2.2.1 webpack-simple模板 19
2.2.2 webpack模板 21
2.2.3 构建工具 23
2.3 Vue工程的webpack配置与基本用法 25
2.3.1 webpack的特点 26
2.3.2 基本用法 27
2.3.3 用别名取代路径引用 29
2.3.4 配置多入口程序 30
2.4 基于Karma+Phantom+Mocha+Sinon+Chai的单元测试环境 32
2.5 基于Nightwatch的端到端测试环境 38
第3章 路由与页面间导航 51
3.1 vue-router 53
3.2 路由的模式 57
3.3 路由与导航 58
3.4 导航状态样式 69
3.5 History的控制 70
3.6 关于Fallback 71
3.7 小结 73
第4章 页面的区块化与组件的封装 75
4.1 页面逻辑的实现 76
4.2 封装可重用组件 80
4.3 自定义事件 87
4.4 数据接口的分析与提取 89
4.5 从服务端获取数据 91
4.6 创建复合型的模板组件 95
4.7 数据模拟 100
4.8 小结 102
4.9 扩展阅读:Vue组件的继承—mixin 103
第5章 Vue的测试与调试技术 110
5.1 Mocha入门 111
5.2 组件的单元测试方法 118
5.3 单元测试中的仿真技术 121
5.3.1 调用侦测(Spies) 124
5.3.2 Sinon的断言扩展 126
5.3.3 存根(stub) 128
5.3.4 接口仿真(Mocks) 131
5.3.5 后端服务仿真 133
5.4 调试 134
5.5 Nightwatch入门 139
5.5.1 编写端到端测试 139
5.5.2 钩子函数与异步测试 141
5.5.3 全局模块与Nightwatch的调试 143
5.5.4 Page Objects模式 147
第6章 视图与表单的处理 153
6.1 为Vue2集成UIkit 154
6.2 表格视图的实现 159
6.2.1 实时数据筛选 164
6.2.2 多行数据的选择 167
6.2.3 排序的实现 171
6.3 单一职责原则与高级组件开发方法 176
6.3.1 搜索区的组件化 177
6.3.2 母板组件 179
6.3.3 重构模态对话框组件 181
6.3.4 高级组件与Render方法 183
6.3.5 UIkit按钮 194
6.3.6 通用表格组件 198
6.4 表单的设计与实现 211
6.4.1 计算属性的双向绑定 214
6.4.2 富文本编辑器组件的实现 215
6.4.3 实现嵌套式容器组件 220
6.4.4 表单的验证 224
6.5 集成服务端的CRUD Restful API 239
6.6 HTTP拦截器inteceptor 242
6.7 开发服务器的定制 245
第7章 Vuex状态管理 250
7.1 Vuex的基本结构 253
7.2 data的替代者——State和Getter 256
7.3 测试Getter 260
7.4 Action——操作的执行者 261
7.5 测试Action 263
7.6 只用Mutation修改状态 265
7.7 测试Mutations 268
7.8 子状态和模块 269
7.9 用服务分离外部操作 274
附录A Chai断言参考 277
附录B Vee-Validate验证规则参考 289