https://github.com/angular/angular.js/blob/master/src/ng/q.js

1、ng-app 指令告诉 AngularJS,<div> 元素是 AngularJS 应用程序 的"所有者"。
2、ng-model 指令把输入域的值绑定到应用程序变量 name。
3、ng-bind 指令把应用程序变量 name 绑定到某个段落的 innerHTML。
4、ng-init 指令初始化 AngularJS 应用程序变量。

ng-app 指令定义一个 AngularJS 应用程序。
ng-model 指令把元素值(比如输入域的值)绑定到应用程序
ng-bind 指令把应用程序数据绑定到 HTML 视图。

 

四大特性:
mvc
模块化和依赖注入
双向数据绑定
指令

 


注意:
ng-bind 在标签内绑定
{{}}直接绑定

5、
AngularJS 表达式 与 JavaScript 表达式
类似于 JavaScript 表达式,AngularJS 表达式可以包含字母,操作符,变量。
与 JavaScript 表达式不同,AngularJS 表达式可以写在 HTML 中。
与 JavaScript 表达式不同,AngularJS 表达式不支持条件判断,循环及异常。
与 JavaScript 表达式不同,AngularJS 表达式支持过滤器。


ng-repeat="x in names" 对内容循环迭代

一个网页可以包含多个运行在不同元素中的 AngularJS 应用程序。

ng-app 如何通过一个值(比如 ng-app="myModule")连接到代码模块。

6、应用状态
ng-model 指令可以为应用数据提供状态值(invalid, dirty, touched, error):

7、Scope(作用域) 是应用在 HTML (视图) 和 JavaScript (控制器)之间的纽带。

8、AngularJS 过滤器
过滤器可以通过一个管道字符(|)和一个过滤器添加到表达式中。

currency 格式化数字为货币格式。
filter 从数组项中选择一个子集。
lowercase 格式化字符串为小写。
orderBy 根据某个表达式排列数组。
uppercase 格式化字符串为大写。

过滤器可以通过一个管道字符(|)和一个过滤器添加到指令中。

8、服务
$location 本地服务
$http 是 AngularJS 应用中最常用的服务。 服务向服务器发送请求,应用响应服务器传送过来的数据。
AngularJS $timeout 服务对应了 JS window.setTimeout 函数。
AngularJS $interval 服务对应了 JS window.setInterval 函数。

使用自定义的的服务 hexafy 将一个数字转换为16进制数: 启动自定义服务

当你创建了自定义服务,并连接到你的应用上后,你可以在控制器,指令,过滤器或其他服务中使用它。

9、
AngularJS $http 是一个用于读取web服务器上数据的服务。
$http.get(url) 是用于读取服务器数据的函数。

$http.get() 从web服务器上读取静态 JSON 数据。

前面实例我们使用了数组作为数据源,以下我们将数据对象作为数据源。

10、表格
表格显示序号可以在 <td> 中添加 $index:
使用 $even 和 $odd

ng-if="$odd
11、dom
ng-disabled 指令绑定应用程序数据 "mySwitch" 到 HTML 的 disabled 属性。
ng-model 指令绑定 "mySwitch" 到 HTML input checkbox 元素的内容(value)。

12、表单

novalidate 属性在应用中不是必须的,但是你需要在 AngularJS 表单中使用,用于重写标准的 HTML5 验证。

$dirty 表单有填写记录
$valid 字段内容合法的
$invalid 字段内容是非法的
$pristine 表单没有填写记录

13、全局api

API 描述
angular.lowercase() 转换字符串为小写
angular.uppercase() 转换字符串为大写
angular.isString() 判断给定的对象是否为字符串,如果是返回 true。
angular.isNumber() 判断给定的对象是否为数字,如果是返回 true。


最复杂指令:

restrict 值可以是以下几种:
E 只限元素名使用
A 只限属性使用
C 只限类名使用
M 只限注释使用

 

 

 

 


==========================================================
数组:


<div ng-app="myApp" ng-controller="myCtrl">

<ul>
<li ng-repeat="x in names">{{x}}</li>
</ul>

</div>

<script>
var app = angular.module('myApp', []);

app.controller('myCtrl', function($scope) {
$scope.names = ["Emil", "Tobias", "Linus"];
});
</script>

 

在指令 里 操作dom

transclude:true 不替换
<div ng-transclude></div>

complile link 编译

指令 link 函数 操作dom 绑定事件

2-7

scope 创建独立作用域 scope:{}


暴露方法 卸载controller里
link 处理指令内部的数据

return

require: 依赖某个指令


scope 绑定策略 @ 字符串 == 双向 & 传递父函数


3-2

compile 操作scope报错 不能操作

 


@ 函数 块级键

 

相关文章: