小生愛

Angular.js 实例

// Angular 实例一 ng-app _________________________________________________________________________ /** * ng-app : 定义Angular解析范围 * ng-model : 把输出域的值绑定到应用程序的某个变量上 * ng-bind : 把应用程序定义的变量绑定到某个节点的innerHTML上 */

在输入框中尝试输入:

姓名:

// 这种方式使用data-ng-model也是可以的

在输入框中尝试输入:

姓名:

// 只有动态改变该div的值时 p的值才会发生变化
小花

{{value}}

// Angular 实例二 ng-init _________________________________________________________________________ /** * 应用程序的变量值必须带引号 * 变量名 不能跟其他变量名重复 */

// Angular 实例三 Angular表达式 _________________________________________________________________________ /** * 表达式写在 {{}} * ng-init : 可以同时定义多个属性 */ // 数字

{{x * y}}

// 上面的写法等价于用ng-bind这种写法

// 字符串

{{name + age}}

// 对象

{{obj.name + ' ' + obj.age}}

// 数组

{{arr[0]}}

// ng-bind-template : 同时绑定多个表达式

// 控制器嵌套
Say hello
{{ person }}
// Angular 实例七 过滤器 _________________________________________________________________________
  • {{(x.name | uppercase) + ' ' + (x.country | lowercase)}}
// 通过JS修改过滤器
// ng-readonly // ng-class // ng-cloak : 避免闪烁 ng-cloak指令会将内部元素隐藏,直到路由调用对应的页面时才显示出来

{{greeting}}

/** * ng-change : 表单输入发生变化时计算表达式的值 */
{{ equation.output }}
// Angular 实例八 XMLHttpRequest _________________________________________________________________________
  • {{x.Name + ' - ' + x.Country}}
// 跨域请求
显示的内容: {{ aThirdProperty }}
显示内容: {{ aThirdProperty }}
显示内容: {{ aThirdProperty }}
显示内容: {{ myProperty }}
显示内容: {{ myProperty }}
// 排序 分组 过滤 该方法是通过改变p标签的应用程序变量cd的值为 // /** * ng-repeat : 解析的JSON的某一个键 $index : 遍历的进度(0...length-1) $first : 当元素是遍历的第一个时值为true $middle : 当元素处于第一个和最后元素之间时值为true $last : 当元素是遍历的最后一个时值为true $even : 当$index值是偶数时值为true $odd : 当$index值是奇数时值为true */

  • {{x.name + ',' + x.age}}
var filter = function ($scope){ $scope.person = [ {name:'小花', age:22}, {name:'小花', age:21}, {name:'小白', age:23}, {name:'小白', age:24} ]; $('.abc').on('keyup', function (){ $scope.cd = 'age'; }); }; // Angular 实例八 表格练习 _________________________________________________________________________ /** * ng-if="$odd" : 如果是奇数输出内容 * ng-if="$even" : 如果是偶数输出内容 * $index : 序号 * uppercase : 转换为大写 * orderBy : 排序 */

表格

{{$index}} {{$index}} {{ x.Name }} {{ x.Name }} {{ x.Country | uppercase }} {{ x.Country | uppercase }}
/** * ng-if : 移除或生成一个元素 true : 生成一个元素 false : 移除一个元素 */
显示
隐藏
  • 选中
  • 我是可见的
  • 我是不可见
  • 我是可见的
  • 我是不可见的
  • 我是可见的
// Angular 实例八 表格练习 _________________________________________________________________________

{{firstName + ' ' + lastName}}

// Angular 实例九 表单验证 _________________________________________________________________________
用户名是必须的。
邮箱是必须的。 非法的邮箱。
// Angular 实例十 $watch 监听 _________________________________________________________________________
编辑
{{user.fName}} {{user.lName}}

创建新用户

编辑用户

// 手动解析表达式

{{ parseValue }}

// Angular 实例十一 ng-include 包含 _________________________________________________________________________
// Angular 实例十二 $interpolate 插值方法 _________________________________________________________________________
{{ previewText }}
// Angular 实例十三 directive 自定义指令 _________________________________________________________________________
// 向指令中传递参数
// 通过ng-model 修改隔离作用域
// = 自定义指令 双向绑定 // 指令内联控制器
/** * 多控制器 属性 方法修改同javascript 对象引用 值复制 */
{{ someModel.someValue }}
{{ someModel.someValue }}
// Angular 实例十四 $timeout _________________________________________________________________________ // Angular 实例十五 ng-transclude _________________________________________________________________________
{{time}}

{{type}}

{{text}}

// Angular 实例十六 ui-route _________________________________________________________________________ /** * abstract onEnter onExit */
查看视图 查看嵌套视图1 查看嵌套视图2
点击链接后内容会被加载在这里
/** * 状态改变事件 * 视图加载事件 */