Skip to content

zzy1120716/angular-practice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

angular-practice

《AngularJS实战》源码

目录

前言

第1章 初识Angular

1.1 Angular简介

1.1.1 特点
1.1.2 适用范围
1.1.3 搭建开发Angular应用的环境

1.2 开发简单的Angular应用

示例1-1 编写一个简单的Angular程序
示例1-2 编写一个具有计算功能的Angular程序
示例1-3 编写一个绑定页面元素的Angular程序
示例1-4 编写一个绑定多个页面元素的Angular程序

1.3 本章小结

第2章 Angular基础知识

2.1 Angular中的表达式

2.1.1 Angular表达式与表达式的区别
示例2-1 Angular表达式与表达式之间的相互调用
2.1.2 $window窗口对象在表达式中的使用
示例2-2 $window窗口对象在表达式中的使用
2.1.3 Angular表达式的容错性
示例2-3 Angular表达式的容错性

2.2 Angular中的控制器

2.2.1 控制器的概念
2.2.2 控制器初始化$scope对象
示例2-4 控制器初始化$scope对象
2.2.3 添加$scope对象方法
示例2-5 通过表达式绑定$scope对象的方法
示例2-6 在事件中绑定$scope对象的方法
示例2-7 添加带参数的$scope方法
2.2.4 $scope对象属性和方法的继承
示例2-8 $scope对象中方法和属性的继承

2.3 Angular中的模板

2.3.1 构建模板内容
示例2-9 构建模板内容
2.3.2 使用指令复制元素
示例2-10 使用指令复制元素
2.3.3 添加元素样式
示例2-11 添加元素样式
2.3.4 控制元素的隐藏与显示状态
示例2-12 控制元素的隐藏与显示状态

2.4 模板中的表单控件

2.4.1 表单基本验证功能
示例2-13 表单基本验证功能
2.4.2 表单中的checkbox和radio控件
示例2-14 表单中的checkbox和radio控件
2.4.3 表单中的select控件
示例2-15 表单中的select控件

2.5 本章小结

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

3.1 模板中的过滤器

3.1.1 排序方式过滤
示例3-1 排序方式过滤
3.1.2 匹配方式过滤
示例3-2 匹配方式过滤
3.1.3 自定义过滤器
示例3-3 自定义过滤器

3.2 过滤器的应用

3.2.1 表头排序
示例3-4 表头排序
3.2.2 字符查找
示例3-5 字符查找

3.3 作用域概述

3.3.1 作用域特点
示例3-6 $watch方法的使用
3.3.2 作为数据模型的作用域
示例3-7 作为数据模型的作用域

3.4 作用域的层级和事件

3.4.1 作用域的层级
示例3-8 作用域的层级
3.4.2 作用域事件的传播
示例3-9 作用域事件的传播

3.5 本章小结

第4章 Angular的依赖注入

4.1 依赖注入介绍

4.1.1 依赖注入的原理
示例4-1 依赖注入的原理
4.1.2 简单依赖注入的示例
示例4-2 简单依赖注入的示例

4.2 依赖注入标记

4.2.1 推断式注入
示例4-3 推断式注入的示例
4.2.2 标记式注入
示例4-4 标记式注入的示例
4.2.3 行内式注入
示例4-5 行内式注入的示例

4.3 $injector常用API

4.3.1 has和get方法
示例4-6 has和get方法的示例
4.3.2 invoke方法
示例4-7 invoke方法的示例
4.3.3 依赖注入应用的场景

4.4 本章小结

第5章 Angular中MVC模式

5.1 MVC模式概述

5.1.1 MVC简介
5.1.2 使用Angular中MVC的优势和缺点

5.2 Model组件

5.2.1 Model组件的基础概念
示例5-1 Model组件的基础概念
5.2.2 使用ngRepeater方式遍历Model对象
示例5-2 使用ngRepeater方式遍历Model对象

5.3 Controller组件

5.3.1 控制器的属性和方法
示例5-3 控制器的属性和方法
5.3.2 控制器方法中的参数
示例5-4 控制器方法中的参数
5.3.3 控制器中属性和方法的继承
示例5-5 控制器中属性和方法的继承

5.4 View组件

5.4.1 View组件中的模板切换
示例5-6 View组件中的模板切换
5.4.2 在切换视图模板时传参数
示例5-7 多页面切换并传递参数

5.5 本章小结

第6章 Angular的服务

6.1 Angular服务介绍

6.1.1 内置服务
示例6-1 内置服务调用
6.1.2 自定义服务
示例6-2 使用$provide自定义服务

6.2 创建Angular服务

6.2.1 使用factory方法自定义服务
示例6-3 使用factory方法自定义服务
6.2.2 使用service方法自定义服务
示例6-4 使用service方法自定义服务
6.2.3 使用constant和value方法自定义服务
示例6-5 使用constant和value方法自定义服务

6.3 管理服务的依赖

6.3.1 添加自定义服务依赖项方法
示例6-6 添加自定义服务依赖项方法
6.3.2 嵌套注入服务
示例6-7 嵌套注入服务

6.4 添加服务的其他设置

6.4.1 服务的装饰器
示例6-8 服务的装饰器
6.4.2 服务的多例性
示例6-9 服务的多例性

6.5 本章小结

第7章 Angular与服务端交互

7.1 与服务端交互介绍

7.1.1 传统的AJAX方式与服务端交互
示例7-1 传统的AJAX方式与服务端交互
7.1.2 使用$http快捷方法与服务端交互
示例7-2 使用$http快捷方法与服务端交互
7.1.3 使用$配置对象方式与服务端交互
示例7-3 使用$http配置对象方式与服务端交互

7.2 Angular中的缓存

7.2.1 $cacheFactory服务创建缓存对象
示例7-4 $cacheFactory服务创建缓存对象
7.2.2 $http服务中的缓存
示例7-5 $http服务中的缓存
7.2.3 自定义$http服务中的缓存
示例7-6 自定义$http服务中的缓存

7.3 $resource服务

7.3.1 $resource服务的使用和对象中的方法
示例7-7 $resource对象中方法的使用
7.3.2 在$resource服务中自定义请求方法
示例7-8 $resource服务中自定义方法

7.4 promise对象

7.4.1 promise的基本概念和使用方法
示例7-9 promise对象的创建和使用
7.4.2 promise对象在$http中的应用
示例7-10 promise对象在$http中的应用

7.5 本章小结

第8章 Angular的指令

8.1 Angular指令概述

8.1.1 指令定义的基础
示例8-1 创建一个新的指令
8.1.2 设置指令对象的基础属性
示例8-2 设置指令对象的基础属性

8.2 Angular指令对象的重要属性

8.2.1 指令对象中的transclude属性
示例8-3 设置指令对象中的transclude属性
8.2.2 指令对象中的link属性
示例8-4 设置指令对象中的link属性
8.2.3 指令对象中的pile属性
示例8-5 设置指令对象中的pile属性

8.3 Angular指令对象的scope属性

8.3.1 scope属性是布尔值
示例8-6 scope属性是布尔值 8.3.2 scope属性是对象
示例8-7 scope属性是JSON对象

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

8.4.1 require和controller属性的概念
8.4.2 一个使用require和controller属性的示例
示例8-8 一个使用require和controller属性的示例

8.5 本章小结

第9章 使用$location

9.1 初识$location

9.1.1 调用$location对象的只读方法
示例9-1 调用$location对象的只读方法
9.1.2 调用$location对象的读写类方法
示例9-2 调用$location对象的读写方法

9.2 $location对象的事件

9.2.1 $locationChangeStart事件
示例9-3 捕捉$locationChangeStart事件
9.2.2 $locationChangeSuccess事件
示例9-4 捕捉locationChange-Success事件

9.3 路由模式和地址变更

9.3.1 标签(hashbang)模式
示例9-5 标签模式下获取页面URL中的内容
9.3.2 HTML 5模式
示例9-6 HTML 5模式下获取页面URL中的内容
9.3.3 模式间的区别与关联
示例9-7 两种模式下分别获取页面URL中的内容
9.3.4 路由对象方法的双向绑定
示例9-8 路由对象方法的双向绑定

9.4 本章小结

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

10.1 页面元素的控制

10.1.1 调用element方法控制DOM元素
示例10-1 调用element方法控制DOM元素
10.1.2 解决setTimeout改变属性的无效
示例10-2 解决setTimeout改变属性的无效
10.1.3 解决双大括号绑定元素时的闪烁问题
示例10-3 解决双大括号绑定元素时的闪烁问题

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

10.2.1 注意ng-repeat中的索引号
示例10-4 注意ng-repeat中的索引号
10.2.2 使用track by排序ng-repeat中的数据
示例10-5 使用track by排序ng-repeat中的数据
10.2.3 正确理解ng-repeat指令中scope的继承关系
示例10-6 正确理解ng-repeat指令中scope的继承关系

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

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

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

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

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

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

10.6 本章小结

第11章 综合案例开发

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

11.1.1 需求分析
11.1.2 界面效果
11.1.3 功能开发
11.1.4 源码解析

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

11.2.1 需求分析
11.2.2 界面效果
11.2.3 功能开发
11.2.4 源码解析

11.3 本章小结

About

《AngularJS实战》源码

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published