记录一下工作中使用到的一些AngularJS内置指令

内置指令:所有的内置指令的前缀都为ng,不建议自定义指令使用该前缀,以免冲突

1. ng-model

 使用ng-model实现双向绑定,通过表单的与当前作用域进行绑定

 <input ng-model="greeting">
<p>Hello {{greeting || "World"}}</p>

 那么此时,input框中输入什么, <p>标签中就会随时更新

除此之外,ng-model是可以用到任意一个标签中的,只是用到其他标签的时候,当前作用域的值,是要另外赋值,而不能像input框一样输入

2. ng-init

 我们一般使用这个指令来在Controller中初始化作用域,这里的init()会在对应的Controller中定义

<form ng-init="init()">
...
</form>

3. ng-submit

 点击表单提交的时候会触发该指令,doIt()这个方法会在对应的Controller中取定义

<form ng-submit = "doIt()">
...
<input type="submit" value="提交" />
</form>

4. ng-show/ng-hide

根据ng-show/ng-hide后面的所跟的表达式来显示或隐藏标签,经常通过Controller作用域变量的变化来控制标签的显示与隐藏

<div ng-show="isShow">
...
</div>
<div ng-hide="1+1=2">
  ...
</div>

5. ng-change

结合ng-model使用,ng-model中的变量发生变换则触发该指令

<input type="text" ng-model="calc.arg"  ng-change="calc.result = calc.arg*2" />
<code>{{ calc.result }}</code>

6. ng-bind

ng-bind是单向绑定,用于展示数据的,只能通过$scope去控制数据,然后展示在view中,

而ng-model是双向绑定,用于控制数据,$scope或view中的变化都能互相影响

<input ng-model="object.xxx">
<span ng-bind="object.xxx"></span>

ng-bind就相当于{{object.xxx}},展示在当前视图中

7. ng-options

一般与select标签一起使用,直接看代码,animals是作用域中的变量,将会在对应的Controller中定义

<select ng-model="seleted" ng-options="a.name for a in animals">
<option value="">请选择你的萌宠</option>
</select>

8. ng-repeat

遍历集合,生成对应的模板实例,一般与ul,li标签一起使用,使用方式类似ng-options

<ul>
<li class="menuitem" ng-repeat="item in menuListItem" >
<div class="{{item.icoClass}}"><i class="pointmenu_1" ng-show="{{item.pointm}}"></i></div>
<a name="{{item.pName}}">{{item.menuName.con}}
     <span>{{item.menuName.describe}}</span>
    </a>
</li>
</ul>

9. ng-class

在Angular中要改变一个标签的class,最常见的就是通过在Controller scope中定义某变量来改变class

function ctrl($scope) {
$scope.test = "tips"
} <div class="{{tips}}">
...
</div>

这也是我经常使用的方式,但后来认识到Controller中,要尽量少的设计DOM元素上的操作后,开始尝试使用ng-class

function Ctr($scope) {
$scope.isActive = true;
} <div ng-class="{true: 'active', false: 'inactive'}[isActive]">
</div>

isActive为true时,class为active,false时为inactive

function Ctr($scope) {
$scope.isSelected = 'true';
}
<div ng-class {'selected': isSelected, 'car': isCar}">
</div>

isSelected 为true时,class为selected, isCar为true时为,class为car

Angular内置指令的更多相关文章

  1. angular内置指令相关知识

    原文地址 https://www.jianshu.com/p/5a5b43a8e91f 大纲 1.angular指令的分类 2.angular指令之——组件 3.angular指令之——属性指令 (n ...

  2. Angular内置指令(一)

    要注意的是不要把自己开发的指令以ng开头,以免与内置指令冲突  目录:ng-disabled,ng-readonly,ng-checked,ng-selected,ng-href,ng-src,ng- ...

  3. Angular——内置指令

    内置指令 ng-app 指定应用根元素,至少有一个元素指定了此属性. ng-controller 指定控制器 ng-show控制元素是否显示,true显示.false不显示 ng-hide控制元素是否 ...

  4. Angular内置指令(二)

    目录: $rootScope,ng-app,.run(),ng-include,ng-repeat,ng-if,ng-switch,ng-init ng-show/ng-hide,ng-model,n ...

  5. [转] Angular 4.0 内置指令全攻略

    [From] https://segmentfault.com/a/1190000010416792 简书链接 在这篇文章中,我们将分别列举每一个内置指令的用法,并提供一个例子作为演示.尽量用最少最简 ...

  6. Angular中的内置指令和自定义指令

    NG中的指令,到底是什么(what)? 为什么会有(why)?以及怎样使用(how)? What: 在NG中,指令扩展HTML功能,为 DOM 元素调用方法.定义行为绑定数据等. Why: 最大程度减 ...

  7. AngularJS内置指令

    指令,我将其理解为AngularJS操作HTML element的一种途径. 由于学习AngularJS的第一步就是写内置指令ng-app以指出该节点是应用的根节点,所以指令早已不陌生. 这篇日志简单 ...

  8. angularJS内置指令一览

    基础ng指令 ng-href ng-src ng-disabled ng-readonly ng-checked ng-selected ng-class ng-style ng-show ng-hi ...

  9. AngularJS高级程序设计读书笔记 -- 指令篇 之 内置指令

    1. 内置指令(10-12 章) AngularJS 内置超过 50 个内置指令, 包括 数据绑定,表单验证,模板生成,时间处理 和 HTML 操作. 指令暴露了 AngularJS 的核心功能, 如 ...

随机推荐

  1. 一个简单的java僵局演示示例

    在实际编程,为了避免死锁情况,但是,让你写一个有用的程序死锁似几乎不要太简单(种面试题),下面是一个简单的死锁样例. 线程的同步化可能会造成死锁,死锁发生在两个线程相互持有对方正在等待的东西(实际是两 ...

  2. C# Windows Phone 8 WP8 高级开发,制作不循环 Pivot ,图片(Gallery)导览不求人! 内附图文教学!!

    原文:C# Windows Phone 8 WP8 高级开发,制作不循环 Pivot ,图片(Gallery)导览不求人! 内附图文教学!! 一般我们在开发Winodws Phone APP 的时候往 ...

  3. [转载] 树莓派读取温湿度传感器DHT11

    原文地址: http://blog.csdn.net/liang890319/article/details/8739683 硬件: 树莓派 2.0 DHT模块  接树莓派5V GND GPIO1 功 ...

  4. 【原创】leetCodeOj ---Construct Binary Tree from Preorder and Inorder Traversal 解题报告

    原题地址: https://oj.leetcode.com/problems/construct-binary-tree-from-preorder-and-inorder-traversal/ 题目 ...

  5. 2048 Puzzle游戏攻略

    2048 Puzzle这是目前手机游戏的很火. 在地铁上经常看到的人玩这个游戏. 首先,简介2048 Puzzle游戏. 游戏界面是4X4广场格,每一方格可以放置在数字. 有四种移动数字的方法,向左. ...

  6. JavaEE SSH集成框架(两) struts2 本地加载dtd文件,action组态

    1. 载入中struts2的dtd文件.使struts.xml网络无法验证,和eclipse有技巧 在src在创建struts.xml: <? xmlversion="1.0" ...

  7. Interpolator(插值器)的种类

    Interpolator(插值器)的种类 Interpolator被用来修饰动画效果,定义动画的变化率,可以使存在的动画效果accelerated(加速),decelerated(减速),repeat ...

  8. mysqlbackup 还原特定的表

    mysqlbackup使用TTS恢复指定表. ************************************************************* 4.恢复特定表 ******* ...

  9. HDU 5050 Divided Land(进制转换)

    题意  给你两个二进制数m,n   求他们的最大公约数  用二进制表示  0<m,n<2^1000 先把二进制转换为十进制  求出最大公约数  再把结果转换为二进制  数比較大要用到大数 ...

  10. 动软.NET 分页存储过程UP_GetRecordByPage

    1, ------------------------------------ --用途:支持任意排序的分页存储过程 --说明: ----------------------------------- ...