当前位置:首页 > 工业技术
AngularJS高级程序设计
AngularJS高级程序设计

AngularJS高级程序设计PDF电子书下载

工业技术

  • 电子书积分:18 积分如何计算积分?
  • 作 者:(美)弗里曼著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2015
  • ISBN:9787115393609
  • 页数:606 页
图书介绍:本书首先介绍了MVC模式及其众多优点。然后展示了如何在项目中使用AngularJS的功能,以产生专业水准的开发成果。本书详尽第介绍了AngularJS的最高级和复杂的功能,深入介绍了需要掌握的知识和技能。
《AngularJS高级程序设计》目录

第1部分 准备 2

第1章 准备 2

1.1 你需要知道哪些知识 2

1.2 本书的组织结构 2

1.3 会有许多实例吗 3

1.4 从哪里可以获得实例代码 6

1.5 如何搭建你的开发环境 6

1.5.1 选择Web浏览器 7

1.5.2 选择代码编辑器 7

1.5.3 安装Node.js 8

1.5.4 安装Web服务器 8

1.5.5 安装测试系统 9

1.5.6 创建AngularJS文件夹 9

1.5.7 执行一个简单的测试 11

1.6 小结 13

第2章 你的第一个AngularJS应用 14

2.1 准备项目 14

2.2 使用AngularJS 16

2.2.1 将AngularJS应用到HTML文件 16

2.2.2 创建数据模型 18

2.2.3 创建控制器 20

2.2.4 创建视图 22

2.3 基本功能之外 25

2.3.1 使用双向模型绑定 25

2.3.2 创建和使用控制器行为 27

2.3.3 使用依赖于其他行为的行为 29

2.3.4 响应用户交互 32

2.3.5 对模型数据过滤和排序 35

2.3.6 通过Ajax获取数据 38

2.4 小结 41

第3章 结合背景理解AngularJS 42

3.1 理解AngularJS的擅长之处 42

3.2 理解MVC模式 44

3.2.1 理解模型 46

3.2.2 理解控制器 47

3.2.3 理解视图数据 48

3.2.4 理解视图 48

3.3 理解RESTful服务 48

3.4 常见的设计陷阱 50

3.4.1 将逻辑放到错误的地方 50

3.4.2 采用数据存储所依赖的数据格式 51

3.4.3 墨守成规 51

3.5 小结 52

第4章 HTML和Bootstrap CSS入门 53

4.1 了解HTML 53

4.1.1 了解HTML元素的解析结构 54

4.1.2 了解属性 55

4.1.3 了解元素内容 56

4.1.4 了解空元素 56

4.1.5 了解文档结构 57

4.2 了解Bootstrap 58

4.2.1 使用基本的Bootstrap类 60

4.2.2 用Bootstrap对表格使用样式 61

4.2.3 使用Bootstrap创建表单 64

4.2.4 使用Bootstrap创建网格 67

4.3 小结 71

第5章 JavaScript基础 72

5.1 准备示例项目 73

5.2 理解script元素 73

5.3 使用语句 74

5.4 定义并使用函数 75

5.4.1 定义带参函数 76

5.4.2 定义返回结果的函数 77

5.4.3 检查函数 78

5.5 使用变量及类型 79

5.5.1 使用基本类型 80

5.5.2 创建对象 82

5.5.3 使用对象 86

5.6 使用JavaScript运算符 91

5.6.1 使用条件语句 92

5.6.2 对比等于运算符和全等运算符 93

5.6.3 显式转换类型 96

5.7 使用数组 98

5.7.1 使用数组字面量 99

5.7.2 检测数组 100

5.7.3 读取和修改数组的内容 100

5.7.4 枚举数组内容 101

5.7.5 使用内置数组方法 102

5.8 比较undefined和null值 103

5.9 使用承诺 106

5.10 使用JSON 111

5.11 小结 112

第6章 真正的应用程序:运动商店 113

6.1 开始 114

6.1.1 准备数据 114

6.1.2 准备应用程序 117

6.2 显示(伪造的)产品数据 120

6.2.1 创建控制器 120

6.2.2 显示产品详情 122

6.3 显示分类列表 125

6.3.1 创建分类列表 125

6.3.2 生成分类导航链接 126

6.3.3 选择分类 129

6.3.4 高亮选择的分类 132

6.3.5 添加分页 134

6.4 小结 138

第7章 运动商店:导航和结账 140

7.1 准备实例项目 140

7.2 使用真实项目数据 140

7.3 创建局部视图 144

7.4 创建购物车 146

7.4.1 定义购物车模块和服务 146

7.4.2 创建购物车部件 148

7.4.3 添加产品选择按钮 151

7.5 添加URL导航 154

7.5.1 定义URL路由 154

7.5.2 使用URL路由导航 156

7.6 开始结账流程 158

7.7 小结 161

第8章 运动商店:订单和管理 162

8.1 准备示例程序 162

8.2 获取运输详情 162

8.2.1 添加表单验证 164

8.2.2 添加剩下的表单字段 168

8.3 下单 170

8.3.1 扩展Deployd服务 170

8.3.2 定义控制器行为 172

8.3.3 调用控制器行为 173

8.3.4 定义视图 173

8.4 改进 174

8.5 管理产品类别 175

8.5.1 准备Deployd 175

8.5.2 创建管理应用程序 177

8.5.3 实现验证 178

8.5.4 定义主视图和控制器 181

8.5.5 实现订单特性 183

8.5.6 实现产品特性 185

8.6 小结 190

第2部分 使用Angular JS工作 194

第9章 AngularJS应用剖析 194

9.1 准备示例项目 195

9.2 使用模块工作 196

9.3 使用模块定义AngularJS组件 197

9.3.1 定义控制器 198

9.3.2 定义指令 204

9.3.3 定义过滤器 207

9.3.4 定义服务 210

9.4 使用模块组织代码 213

9.5 小结 218

第10章 使用绑定和模板指令 219

10.1 为什么以及何时使用指令 220

10.2 准备示例项目 220

10.3 使用数据绑定指令 221

10.3.1 执行和禁止单向绑定 223

10.3.2 创建双向数据绑定 225

10.4 使用模板指令 227

10.4.1 重复生成元素 228

10.4.2 重复生成多个顶层元素 234

10.4.3 使用局部视图工作 235

10.4.4 将ng-include指令用作属性 239

10.4.5 有条件地交换元素 240

10.4.6 隐藏未处理的内联模板绑定表达式 244

10.5 小结 246

第11章 使用元素与事件指令 247

11.1 准备示例项目 247

11.2 使用元素指令 248

11.2.1 显示、隐藏和移除元素 249

11.2.2 管理类与CSS 254

11.3 处理事件 258

11.4 管理特殊属性 263

11.4.1 管理布尔属性 263

11.4.2 管理其他属性 265

11.5 小结 266

第12章 使用表单 267

12.1 准备示例项目 267

12.2 对表单元素使用双向数据绑定 269

12.2.1 隐式地创建模型属性 270

12.2.2 检查所创建的数据模型对象 274

12.3 校验表单 274

12.4 提供表单校验反馈信息 280

12.4.1 使用CSS提供校验反馈信息 281

12.4.2 使用特殊变量来提供反馈信息 284

12.4.3 延迟校验反馈 288

12.5 使用表单指令属性 290

12.5.1 使用input元素 290

12.5.2 使用文本区 293

12.5.3 使用选择列表 294

12.6 小结 298

第13章 使用控制器和作用域 299

13.1 为什么以及何时使用控制器和作用域 299

13.2 准备示例项目 300

13.3 理解基本原理 301

13.3.1 创建和使用控制器 301

13.3.2 设置作用域 302

13.3.3 修改作用域 304

13.4 组织控制器 305

13.4.1 使用一个单块控制器 306

13.4.2 复用控制器 308

13.4.3 使用控制器继承 313

13.4.4 使用多控制器 320

13.5 使用无作用域的控制器 322

13.6 显式地更新作用域 324

13.6.1 设置jQuery UI 324

13.6.2 控制按钮状态 326

13.6.3 对按钮单击进行计数 327

13.7 小结 328

第14章 使用过滤器 329

14.1 为什么以及何时使用过滤器 329

14.2 准备示例项目 330

14.3 过滤单个数据的值 332

14.3.1 格式化货币值 332

14.3.2 格式化其他数字值 334

14.3.3 格式化日期 335

14.3.4 改变字符串大小写 337

14.3.5 生成JSON 338

14.3.6 本地化过滤器输出 338

14.4 过滤集合 341

14.4.1 限制项目数量 341

14.4.2 选取项 345

14.4.3 对项目排序 347

14.5 链式过滤器 350

14.6 创建自定义过滤器 351

14.6.1 创建格式化数据值的过滤器 351

14.6.2 创建一个集合过滤器 353

14.6.3 在已有的过滤器上搭建新的过滤器 355

14.7 小结 356

第15章 创建自定义指令 357

15.1 为什么以及何时创建自定义指令 357

15.2 准备示例项目 358

15.3 创建自定义指令 359

15.3.1 定义指令 359

15.3.2 实现链接函数 360

15.3.3 打破对数据属性的依赖 363

15.3.4 处理数据变化 366

15.4 使用jqLite工作 371

15.4.1 对文档对象模型导航 371

15.4.2 修改元素 375

15.4.3 创建和移除元素 377

15.4.4 处理事件 380

15.4.5 其他jqLite方法 382

15.4.6 从jqLite访问AngularJS的特性 382

15.5 使用jQuery替换jqLite 383

15.6 小结 385

第16章 创建复杂指令 386

16.1 准备示例项目 386

16.2 定义复杂指令 387

16.3 使用指令模板 392

16.3.1 使用函数作为模板 394

16.3.2 使用外部模板 395

16.3.3 通过函数选择一个外部模板 396

16.3.4 替换元素 397

16.4 管理指令的作用域 401

16.4.1 创建多个控制器 403

16.4.2 给每个指令实例创建自己的作用域 404

16.4.3 创建隔离的作用域 406

16.5 小结 416

第17章 高级指令特性 417

17.1 准备示例项目 417

17.2 使用嵌入包含 417

17.3 在指令中使用控制器 424

17.4 创建自定义表单元素 430

17.4.1 处理外部变化 432

17.4.2 处理内部变化 434

17.4.3 格式化数据值 435

17.4.4 校验自定义表单元素 436

17.5 小结 439

第3部分 Angular JS服务 442

第18章 模块与服务的协作 442

18.1 为什么以及何时使用和创建服务与模块 442

18.2 准备示例项目 443

18.3 使用模块建立应用 445

18.3.1 维护单个模块 445

18.3.2 创建新模块 447

18.4 创建和使用服务 448

18.4.1 使用Factory方法 448

18.4.2 使用Service方法 451

18.4.3 使用Provider方法 453

18.5 使用内置模块和服务 455

18.6 小结 456

第19章 针对全局对象、错误和表达式的服务 457

19.1 准备示例项目 457

19.2 接触DOM API全局对象 457

19.2.1 为什么使用以及何时使用全局对象服务 458

19.2.2 访问window对象 458

19.2.3 访问document对象 459

19.2.4 使用Interval和Timeout 460

19.2.5 访问URL 461

19.2.6 执行日志 467

19.3 异常处理 469

19.3.1 为什么以及何时使用异常服务 469

19.3.2 操作异常 469

19.3.3 直接使用异常服务 470

19.3.4 实现自定义异常处理器 471

19.4 处理危险数据 472

19.4.1 为什么以及何时使用危险数据服务 472

19.4.2 显示危险数据 473

19.4.3 使用不安全绑定 474

19.4.4 明确信任的数据 477

19.5 使用AngularJS表达式和指令 478

19.5.1 为什么以及何时使用表达式和指令服务 479

19.5.2 转换表达式为函数 479

19.5.3 插入字符串 482

19.5.4 编译内容 485

19.6 小结 487

第20章 Ajax和Promises服务 488

20.1 为什么以及何时使用Ajax服务 488

20.2 准备示例项目 489

20.3 产生Ajax请求 489

20.3.1 产生Ajax请求 492

20.3.2 接收Ajax响应 493

20.3.3 配置Ajax请求 496

20.3.4 设置默认的Ajax 500

20.3.5 使用Ajax拦截器 502

20.4 使用承诺 504

20.4.1 获取和使用Defered对象 505

20.4.2 令人着迷的承诺 507

20.4.3 理解为什么承诺不是正常事件 509

20.4.4 串联结果 509

20.4.5 分组承诺 511

20.5 小结 514

第21章 REST服务 515

21.1 为什么以及何时使用REST服务 515

21.2 准备示例项目 515

21.2.1 创建RESTful服务 516

21.2.2 创建AngularJS应用程序 519

21.3 使用$http服务 523

21.3.1 列出产品数据 523

21.3.2 删除产品 525

21.3.3 创建产品 526

21.3.4 更新产品 526

21.3.5 测试Ajax实现 527

21.4 隐藏Ajax请求 527

21.4.1 安装ngResource模块 530

21.4.2 使用$resource服务 531

21.4.3 配置$resource服务动作 536

21.4.4 创建现成的$resource组件 537

21.5 小结 539

第22章 视图服务 540

22.1 为什么以及何时使用视图服务 540

22.2 准备示例程序 540

22.3 使用URL路由 543

22.3.1 安装ngRoute模块 543

22.3.2 定义URL路由 544

22.3.3 显示选择的视图 546

22.3.4 接通代码和标记 546

22.4 使用路由参数 550

22.5 配置路由 556

22.5.1 使用控制器与路由 556

22.5.2 向路由添加依赖 558

22.6 小结 562

第23章 动画和触摸服务 563

23.1 准备示例项目 563

23.2 动画元素 563

23.2.1 为什么以及何时使用动画服务 564

23.2.2 安装ngAnimation模块 564

23.2.3 定义并应用动画 565

23.2.4 避免平行动画的危险 567

23.3 支持触摸事件 569

23.3.1 为什么以及何时使用触摸事件 569

23.3.2 安装ngTouch模块 569

23.3.3 处理触控手势 569

23.3.4 使用ng-click指令的替代品 571

23.4 小结 571

第24章 供应与注入服务 572

24.1 为什么以及何时使用供应和注入服务 572

24.2 准备示例项目 572

24.3 注册AngularJS组件 572

24.4 管理注入 574

24.4.1 确定函数依赖 575

24.4.2 获得服务实例 577

24.4.3 简化调用过程 578

24.4.4 从根元素中获取$injector服务 579

24.5 小结 580

第25章 单元测试 581

25.1 为什么以及何时做单元测试 581

25.2 准备示例项目 582

25.2.1 安装ngMocks模块 582

25.2.2 创建测试配置 582

25.2.3 创建示例应用程序 583

25.3 使用Karma和Jasmine 585

25.4 理解仿造对象 588

25.5 测试控制器 589

25.6 使用仿造对象 592

25.6.1 仿造HTTP响应 592

25.6.2 仿造时间周期 596

25.6.3 测试日志 598

25.7 测试其他组件 601

25.7.1 测试指令 602

25.7.2 测试服务 604

25.8 小结 606

相关图书
作者其它书籍
返回顶部