记录一下工作中使用到的一些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. lambda Join /Group by/ Contains

    1.Join Contains

  2. Grub2配置详解(转)

    grub2基础教程-修订版                                      smallapple 目录 一.grub2新特性 二.grub2安装与启动 三.grub2配置文件 ...

  3. Java Metrics

    Java Metrics Java Metrics是一个功能比較强大的java统计库,它的输出组件也非常强大,帮我们做好了: 输出到Ganglia 输出到控制台 输出到JMX 输出Json 具体见:d ...

  4. 栈实现java

    栈是一种“先去后出”的抽象的数据结构.例如:我们在洗盘子的时候,洗完一个盘子,将其放在一摞盘子的最上面,但我们全部洗完后,要是有盘子时,我们会先从最上面的盘子开始使用,这种例子就像栈的数据结构一样,先 ...

  5. java基础程序题

    发现自己初学java时保存在word里的练习题,哈哈,放博客里面来作为纪念吧~~~ [程序1]  题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔 ...

  6. python udp编程实例

    与python tcp编程控制见 http://blog.csdn.net/aspnet_lyc/article/details/39854569 c++ udp/tcp 编程见 http://blo ...

  7. 写一个 docker 打击一系列手册

    感谢您的关注,分享也再次给自己一个学习的.机会组织和总结.对未来一段时间内准备一个关于 docker 一系列的实际应用,其中的一些内容此前曾宣布.准备再次修改和整理. 以下是主要的文件夹中的一个: 创 ...

  8. mysql语句在node.js中的写法

    总结一下mysql语句在node.js中的各种写法,参考了npm网站mysql模块给的实例. 查询 select //1 db.query('select * from tuanshang_users ...

  9. DMA为什么比轮询、中断方式性能要卓越非常多?(你不懂)

    本文原创为freas_1990,转载请标明出处:http://blog.csdn.net/freas_1990/article/details/35735397 假设是计算机专业出身的同学,都听过一个 ...

  10. CacheManager

    .Net缓存管理框架CacheManager Cache缓存在计算机领域是一个被普遍使用的概念.硬件中CPU有一级缓存,二级缓存, 浏览器中有缓存,软件开发中也有分布式缓存memcache, redi ...