《AngularJS入门与进阶》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:江荣波著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2017
  • ISBN:9787302460749
  • 页数:336 页
图书介绍:本书分为入门篇和进阶篇,1-15章为入门篇,以实际的案例详细介绍AngularJS基础知识和使用方法,涵盖AngularJS的方方面面;16-19章为进阶篇,介绍AngularJS第三方扩展及高级用法。

第一部分 入门篇 3

第1章 走进AngularJS世界 3

1.1 AngularJS简介 3

1.2 搭建AngularJS开发环境 3

1.2.1 选择集成开发工具 3

1.2.2 下载与安装AngularJS 6

1.2.3 代码调试工具 7

1.3 第一个AngularJS应用 8

1.4 AngularJS应用剖析 9

1.4.1 第一个AngularJS应用解惑 9

1.4.2 AngularJS应用构成元素 10

1.4.3 AngularJS表达式 10

1.5 本章小结 12

第2章 双向数据绑定 13

2.1 AngularJS双向数据绑定 13

2.2 ng-model指令 14

2.3 ng-bind指令 16

2.4 数据绑定实例:价格计算器 17

2.5 本章小结 18

第3章 AngularJS与MVC 19

3.1 MVC模式简介 19

3.2 AngularJS中的MVC 20

3.2.1 AngularJS控制器的定义 20

3.2.2 控制器对象的实例化 21

3.3 使用MVC思想重构价格计算器程序 22

3.4 控制器的作用域范围 23

3.5 控制器中处理DOM事件 25

3.6 本章小结 27

第4章 应用模块化 28

4.1 应用模块划分的重要性 28

4.2 AngularJS中的模块 28

4.2.1 AngularJS模块的定义 29

4.2.2 使用模块解决命名冲突问题 29

4.3 模块化最佳实践 32

4.4 本章小结 33

第5章 作用域与事件 34

5.1 AngularJS作用域详解 34

5.2 AngularJS作用域继承 36

5.2.1 JavaScript对象继承机制 36

5.2.2 AngularJS作用域对象原型继承 39

5.3 作用域高级特性 42

5.3.1 $watch方法监视作用域 42

5.3.2 作用域监视解除 45

5.3.3 $apply方法与$digest循环 46

5.3.4 $apply与$digest应用实战 47

5.3.5 $timeout与$interval服务介绍 49

5.4 作用域事件路由与广播 50

5.4.1 $emit方法实现事件路由 50

5.4.2 $broadcast方法实现事件广播 52

5.4.3 作用域对象$on方法详解 55

5.5 本章小结 55

第6章 路由与多视图 56

6.1 创建多视图应用 56

6.1.1 使用$routeProvider创建映射 56

6.1.2 创建多视图 58

6.1.3 通过路由切换视图 58

6.2 通过URL向控制器传递参数 60

6.3 ng-template指令的使用 62

6.4 $1ocation服务 64

6.5 $1ocation实现多视图切换 66

6.6 路由事件 67

6.7 ng-include指令 68

6.8 UI Router框架使用 69

6.8.1 UI Router下载与安装 69

6.8.2 UI Router使用案例 70

6.9 本章小结 73

第7章 AngularJS表单校验 74

7.1 Web前端表单校验的必要性 74

7.2 AngularJS表单校验模式 74

7.3 ngMessages模块 79

7.4 本章小结 82

第8章 AngularJS指令 83

8.1 内置指令详解 83

8.2 AngularJS自定义指令 86

8.3 指令定义对象详解 88

8.3.1 link方法 88

8.3.2 compile方法 92

8.3.3 scope属性与指令作用域 94

8.3.4 孤立作用域与父作用域模型数据绑定 95

8.3.5 Transclusion 100

8.3.6 controller方法与require属性 104

8.4 自定义表单验证模式 107

8.5 本章小结 109

第9章 Service、Factory与Provider 110

9.1 Service 110

9.2 Factory 112

9.3 Provider 113

9.4 Value&Constant 114

9.5 本章小结 115

第10章 AngularJS过滤器 116

10.1 过滤器使用方法 116

10.2 AngularJS内置过滤器 118

10.3 自定义过滤器 126

10.3.1 案例一:自定义金额转换人民币大写过滤器 127

10.3.2 案例二:自定义带参数的过滤器 129

10.4 第三方过滤器库的使用 131

10.4.1 angular-filter 131

10.4.2 angul8r-emoji-filter 133

10.5 本章小结 134

第11章 AngularJS中的依赖注入 135

11.1 JavaScript依赖注入实现 138

11.2 AngularJS中的依赖注入 142

11.3 $provide服务介绍 143

11.4 $injector服务介绍 145

11.5 本章小结 146

第12章 AngularJS与动画 147

12.1 Web动画实现原理 147

12.2 使用CSS3实现动画 150

12.2.1 CSS3中的Transform属性 150

12.2.2 CSS3中的Transition属性 153

12.2.3 CSS3中的Animation属性 157

12.2.4 常用的CSS3动画库 160

12.3 AngularJS动画 162

12.3.1 基于事件驱动的CSS3动画 162

12.3.2 AngularJS中的JavaScript动画 166

12.3.3 ngView视图切换动画案例 168

12.3.4 ngAnimate与CSS3动画库整合 172

12.3.5 ngFx动画扩展库 175

12.4 本章小结 177

第13章 Cookie读写 178

13.1 Cookie简介 178

13.2 在JavaScript中操作Cookie 179

13.3 在AngularJS中操作Cookie 183

13.4 本章小结 186

第14章 Promise 187

14.1 AngularJS中的Promise机制 188

14.2 AngularJS请求Web服务 190

14.2.1 $http服务 191

14.2.2 使用Express构建RESTful服务 194

14.2.3 $resource服务 197

14.3 AngularJS文件上传 200

14.4 Angular File Upload模块介绍 204

14.5 本章小结 207

第二部分 进阶篇 211

第15章 AngularUI 211

15.1 UI Bootstrap 211

15.1.1 警告框案例 212

15.1.2 复选框案例 213

15.1.3 日历控件案例 215

15.1.4 模态对话框案例 216

15.1.5 下拉菜单案例 220

15.2 UI Ace 222

15.3 UI Grid 227

15.4 UI Date 229

15.5 UI Select 232

15.6 本章小结 234

第16章 AngularJS精华扩展 235

16.1 利用Angular Chart生成图表 235

16.1.1 柱状图案例 236

16.1.2 曲线图案例 237

16.1.3 饼状图案例 239

16.2 利用Videogular实现播放器 241

16.3 利用Angular Masonry实现照片墙 246

16.4 利用ngDialog实现对话框 250

16.5 本章小结 253

第17章 常用Web前端工具集 254

17.1 Node.js安装与使用 254

17.2 Npm包管理工具 257

17.2.1 Npm安装 257

17.2.2 初始化项目 258

17.2.3 安装Node模块 259

17.2.4 卸载Node模块 260

17.3 Bower管理工具 260

17.3.1 安装Bower 261

17.3.2 初始化Bower 261

17.3.3 使用Bower安装包 263

17.3.4 查看包的信息 263

17.3.5 更新包的版本 264

17.3.6 查找包 264

17.3.7 卸载包 264

17.4 Gulp项目管理工具 265

17.4.1 Gulp的安装与使用 265

17.4.2 利用JSHint验证JavaScript代码 266

17.4.3 压缩JavaScript代码 268

17.4.4 使用Gulp Changed插件更新文件 270

17.4.5 使用Gulp Plumber插件处理异常 271

17.4.6 使用Gulp压缩图片 271

17.4.7 使用Gulp编译Less 272

17.4.8 使用Gulp Browsersync插件进行调试 275

17.5 Jasmine&Karma单元测试工具 277

17.5.1 安装Jasmine 278

17.5.2 使用Jasmine进行单元测试 278

17.5.3 在浏览器环境下使用Jasmine 282

17.5.4 安装并使用karma 284

17.5.5 整合Jasmine&Karma 286

17.5.6 AngularJS单元测试 288

17.6 本章小结 294

第18章 综合案例:扫雷游戏 295

18.1 搭建开发环境 295

18.2 游戏元素介绍 296

18.3 实现布雷区 297

18.4 随机生成地雷 300

18.5 生成方格中的数字 303

18.6 响应右击事件 308

18.7 游戏胜利与失败条件检测 311

18.8 实现重新开始游戏功能 313

18.9 自动翻开相邻方格 314

18.10 本章小结 317

第19章 综合案例:客户管理系统 318

19.1 项目整体介绍 318

19.2 实现用户模块 321

19.3 实现主面板模块 326

19.4 实现报表模块 328

19.5 实现客户信息管理模块 331

19.6 本章小结 335