《Web开发技术丛书 AngularJS实战》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:陶国荣著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2015
  • ISBN:9787111514602
  • 页数:254 页
图书介绍:这是一本实战性的AngularJS入门教程,系统讲解了AngularIS的各项功能特点和基本使用,配有大量小案例和2个大案例。全书一共11章:第1章对AngularJS做了简要介绍,第2~9章详细讲解了AngularJS的表达式与模板、数据绑定与作用域、依赖注入、MVC模式、服务、与服务端交互、指令、$location等主要内容;第10章讲解了开发中的注意事项和最佳实践;第11章是两个综合性的案例。

第1章 初识Angular 1

1.1 Angular简介 1

1.1.1 特点 2

1.1.2 适用范围 2

1.1.3 搭建开发Angular应用的环境 2

1.2 开发简单的Angular应用 3

示例1-1 编写一个简单的Angular程序 3

示例1-2编写一个具有计算功能的Angular程序 4

示例1-3编写一个绑定页面元素的Angular程序 6

示例1-4编写一个绑定多个页面元素的Angular程序 7

1.3 本章小结 9

第2章 Angular基础知识 10

2.1 Angular中的表达式 10

2.1.1 Angular表达式与JavaScript表达式的区别 10

示例2-1 Angular表达式与JavaScript表达式之间的相互调用 11

2.1.2 $window窗口对象在表达式中的使用 13

示例2-2$window窗口对象在表达式中的使用 13

2.1.3 Angular表达式的容错性 14

示例2-3 Angular表达式的容错性 14

2.2 Angular中的控制器 16

2.2.1 控制器的概念 16

2.2.2 控制器初始化$scope对象 16

示例2-4控制器初始化$scope对象 16

2.2.3 添加$scope对象方法 18

示例2-5通过表达式绑定$scope对象的方法 18

示例2-6在事件中绑定$scope对象的方法 20

示例2-7添加带参数的$scope方法 21

2.2.4 $scope对象属性和方法的继承 23

示例2-8$scope对象中方法和属性的继承 23

2.3 Angular中的模板 24

2.3.1 构建模板内容 25

示例2-9构建模板内容 25

2.3.2 使用指令复制元素 26

示例2-10使用指令复制元素 26

2.3.3 添加元素样式 29

示例2-11添加元素样式 30

2.3.4 控制元素的隐藏与显示状态 33

示例2-12控制元素的隐藏与显示状态 33

2.4 模板中的表单控件 35

2.4.1 表单基本验证功能 35

示例2-13表单基本验证功能 35

2.4.2 表单中的checkbox和radio控件 37

示例2-14表单中的checkbox和radio控件 38

2.4.3 表单中的select控件 39

示例2-15表单中的select控件 41

2.5 本章小结 43

第3章 Angular的过滤器和作用域 44

3.1 模板中的过滤器 44

3.1.1 排序方式过滤 44

示例3-1排序方式过滤 45

3.1.2 匹配方式过滤 48

示例3-2匹配方式过滤 49

3.1.3 自定义过滤器 51

示例3-3自定义过滤器 51

3.2 过滤器的应用 54

3.2.1 表头排序 55

示例3-4表头排序 55

3.2.2 字符查找 57

示例3-5字符查找 58

3.3 作用域概述 60

3.3.1 作用域特点 60

示例3-6 $watch方法的使用 60

3.3.2 作为数据模型的作用域 62

示例3-7作为数据模型的作用域 62

3.4 作用域的层级和事件 64

3.4.1 作用域的层级 64

示例3-8作用域的层级 64

3.4.2 作用域事件的传播 67

示例3-9作用域事件的传播 69

3.5 本章小结 71

第4章 Angular的依赖注入 72

4.1 依赖注入介绍 72

4.1.1 依赖注入的原理 72

示例4-1依赖注入的原理 73

4.1.2 简单依赖注入的示例 75

示例4-2简单依赖注入的示例 75

4.2 依赖注入标记 78

4.2.1 推断式注入 78

示例4-3推断式注入的示例 78

4.2.2 标记式注入 79

示例4-4标记式注入的示例 80

4.2.3 行内式注入 82

示例4-5行内式注入的示例 82

4.3 $injector常用API 84

4.3.1 has和get方法 84

示例4-6 has和get方法的示例 84

4.3.2 invoke方法 86

示例4-7 invoke方法的示例 86

4.3.3 依赖注入应用的场景 88

4.4 本章小结 89

第5章 Angular中MVC模式 90

5.1 MVC模式概述 90

5.1.1 MVC简介 90

5.1.2 使用Angular中MVC的优势和缺点 91

5.2 Model组件 92

5.2.1 Model组件的基础概念 92

示例5-1 Model组件的基础概念 92

5.2.2 使用ngRepeater方式遍历Model对象 94

示例5-2使用ngRepeater方式遍历Model对象 94

5.3 Controller组件 96

5.3.1 控制器的属性和方法 96

示例5-3控制器的属性和方法 96

5.3.2 控制器方法中的参数 98

示例5-4控制器方法中的参数 98

5.3.3 控制器中属性和方法的继承 100

示例5-5控制器中属性和方法的继承 100

5.4 View组件 103

5.4.1 View组件中的模板切换 103

示例5-6 View组件中的模板切换 103

5.4.2 在切换视图模板时传参数 106

示例5-7多页面切换并传递参数 106

5.5 本章小结 109

第6章 Angular的服务 110

6.1 Angular服务介绍 110

6.1.1 内置服务 110

示例6-1 内置服务调用 111

6.1.2 自定义服务 112

示例6-2使用$provide自定义服务 113

6.2 创建Angular服务 115

6.2.1 使用factory方法自定义服务 115

示例6-3使用factory方法自定义服务 115

6.2.2 使用service方法自定义服务 117

示例6-4使用service方法自定义服务 117

6.2.3 使用constant和value方法自定义服务 119

示例6-5使用constant和value方法自定义服务 120

6.3 管理服务的依赖 122

6.3.1 添加自定义服务依赖项方法 122

示例6-6添加自定义服务依赖项方法 122

6.3.2 嵌套注入服务 124

示例6-7嵌套注入服务 125

6.4 添加服务的其他设置 127

6.4.1 服务的装饰器 127

示例6-8服务的装饰器 127

6.4.2 服务的多例性 129

示例6-9服务的多例性 129

6.5 本章小结 132

第7章 Angular与服务端交互 133

7.1 与服务端交互介绍 133

7.1.1 传统的AJAX方式与服务端交互 134

示例7-1传统的AJAX方式与服务端交互 134

7.1.2 使用$http快捷方法与服务端交互 137

示例7-2使用$http快捷方法与服务端交互 137

7.1.3 使用$http配置对象方式与服务端交互 139

示例7-3使用$http配置对象方式与服务端交互 140

7.2 Angular中的缓存 143

7.2.1 $cacheFactory服务创建缓存对象 143

示例7-4$cacheFactory服务创建缓存对象 144

7.2.2 $http服务中的缓存 146

示例7-5 $http服务中的缓存 146

7.2.3 自定义$http服务中的缓存 148

示例7-6 自定义$http服务中的缓存 148

7.3 $resource服务 150

7.3.1 $resource服务的使用和对象中的方法 150

示例7-7$resource对象中方法的使用 152

7.3.2 在$resource服务中自定义请求方法 155

示例7-8$resource服务中自定义方法 155

7.4 promise对象 159

7.4.1 promise的基本概念和使用方法 159

示例7-9 promise对象的创建和使用 160

7.4.2 promise对象在$http中的应用 162

示例7-10 promise对象在$http中的应用 162

7.5 本章小结 164

第8章 Angular的指令 165

8.1 Angular指令概述 165

8.1.1 指令定义的基础 165

示例8-1创建一个新的指令 166

8.1.2 设置指令对象的基础属性 168

示例8-2设置指令对象的基础属性 168

8.2 Angular指令对象的重要属性 170

8.2.1 指令对象中的transclude属性 170

示例8-3设置指令对象中的transclude属性 171

8.2.2 指令对象中的link属性 173

示例8-4设置指令对象中的link属性 173

8.2.3 指令对象中的compile属性 175

示例8-5设置指令对象中的compile属性 175

8.3 Angular指令对象的scope属性 177

8.3.1 scope属性是布尔值 178

示例8-6 scope属性是布尔值 178

8.3.2 scope属性是对象 180

示例8-7 scope属性是JSON对象 181

8.4 Angular指令对象的require和controller属性 183

8.4.1 require和controller属性的概念 184

8.4.2 一个使用require和controller属性的示例 184

示例8-8一个使用require和controller属性的示例 184

8.5 本章小结 187

第9章 使用$location 188

9.1 初识$location 188

9.1.1 调用$location对象的只读方法 188

示例9-1调用$location对象的只读方法 189

9.1.2 调用$location对象的读写类方法 190

示例9-2调用$location对象的读写方法 191

9.2 $location对象的事件 193

9.2.1 $locationChangeStart事件 193

示例9-3捕捉$locationChangeStart 事件 193

9.2.2 $locationChangeSuccess事件 195

示例9-4捕捉locationChange-Success事件 195

9.3 路由模式和地址变更 197

9.3.1 标签(hashbang)模式 198

示例9-5标签模式下获取页面URL中的内容 198

9.3.2 HTML 5模式 200

示例9-6 HTML 5模式下获取页面URL中的内容 200

9.3.3 模式间的区别与关联 202

示例9-7两种模式下分别获取页面URL中的内容 203

9.3.4 路由对象方法的双向绑定 206

示例9-8路由对象方法的双向绑定 207

9.4 本章小结 208

第10章 使用Angular开发的注意事项和最佳实践 209

10.1 页面元素的控制 209

10.1.1 调用element方法控制DOM元素 209

示例10-1调用element方法控制DOM元素 210

10.1.2 解决setTimeout改变属性的无效 212

示例10-2解决setTimeout改变属性的无效 212

10.1.3 解决双大括号绑定元素时的闪烁问题 214

示例10-3解决双大括号绑定元素时的闪烁问题 214

10.2 使用ng-repeat时的注意事项 216

10.2.1 注意ng-repeat中的索引号 216

示例10-4注意ng-repeat中的索引号 216

10.2.2 使用track by排序ng-repeat中的数据 219

示例10-5使用trackby排序ng-repeat中的数据 219

10.2.3 正确理解ng-repeat指令中scope的继承关系 222

示例10-6正确理解ng-repeat指令中scope的继承关系 222

10.3 解决单击按钮事件中的冒泡现象 225

示例10-7解决单击按钮事件中的冒泡现象 225

10.4 释放多余的$watch监测函数 227

示例10-8释放多余的$watch 监测函数 227

10.5 解决ng-if中ng-model值无效的问题 229

示例10-9解决ng-if中ng-model值无效的问题 230

10.6 本章小结 231

第11章 综合案例开发 232

11.1 基于AngularJS使用canvas绘制圆形进度条 232

11.1.1 需求分析 232

11.1.2 界面效果 233

11.1.3 功能开发 233

11.1.4 源码解析 238

11.2 使用AngularJS开发一个抽奖应用 240

11.2.1 需求分析 240

11.2.2 界面效果 240

11.2.3 功能开发 241

11.2.4 源码解析 247

11.3 本章小结 251