前言 1
第1章 AngularJS概述 9
AngularJS简介 10
AngularJS,启航! 18
小结 21
第2章 基本的AngularJS指令及控制器 22
AngularJS模块 22
创建自定义控制器 24
数组的操作与显示 29
更多指令 32
ng-repeat的应用 34
小结 40
第3章 AngularJS中的单元测试 41
单元测试的定义及作用 41
Karma简介 43
Jasmine:定义式测试 48
控制器的单元测试 50
运行单元测试 53
小结 54
第4章 表单、输入和服务 55
ng-model的使用 55
表单的使用 57
使用数据绑定和模型 58
表单状态及验证 59
表单的错误处理 61
ng-form与内嵌表单 66
其他表单控件 68
小结 73
第5章 AngularJS服务揭秘 74
AngularJS服务 74
创建自定义AngularJS服务 83
小结 90
第6章 $http与服务器通信 92
在$http中使用GET方式获取数据 92
$http进阶应用 104
小结 111
第7章 服务及XHR的单元测试 112
单元测试中的依赖注入 112
单元测试中的服务器请求 120
小结 125
第8章 与过滤器共舞 126
AngularJS过滤器介绍 126
创建AngularJS自定义过滤器 136
过滤器中的要点 138
小结 139
第9章 过滤器的单元测试 140
需要测试的过滤器 140
测试timeAgo过滤器 141
小结 143
第10章 ngRoute与页面迁移 144
在单页面应用中进行页面迁移 145
使用ngRoute 146
迁移配置选项 148
其他配置 164
备选方案:ui-router 169
小结 171
第11章 指令 172
什么是指令? 172
自定义指令 173
基本的解决之道 178
小结 195
第12章 指令的单元测试 197
测试指令的步骤 197
Stock Widget指令 198
构建自定义指令的单元测试 199
其他考虑 203
小结 203
第13章 进阶指令 204
AngularJS中的生命周期 204
指令控制器及require选项 216
编译 228
Priority(优先级)和Terminal(终止) 234
第三方指令集成 234
推荐做法 239
小结 242
第14章 端对端测试 243
选择Protractor的理由 244
初始化设置 245
Protractor配置 245
端对端测试 246
我们的顾虑 249
小结 252
第15章 指导方针和推荐做法 253
测试 253
项目结构 256
构建 263
推荐做法 265
工具和库 269
小结 272