Angular内置指令
记录一下工作中使用到的一些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内置指令的更多相关文章
- angular内置指令相关知识
原文地址 https://www.jianshu.com/p/5a5b43a8e91f 大纲 1.angular指令的分类 2.angular指令之——组件 3.angular指令之——属性指令 (n ...
- Angular内置指令(一)
要注意的是不要把自己开发的指令以ng开头,以免与内置指令冲突 目录:ng-disabled,ng-readonly,ng-checked,ng-selected,ng-href,ng-src,ng- ...
- Angular——内置指令
内置指令 ng-app 指定应用根元素,至少有一个元素指定了此属性. ng-controller 指定控制器 ng-show控制元素是否显示,true显示.false不显示 ng-hide控制元素是否 ...
- Angular内置指令(二)
目录: $rootScope,ng-app,.run(),ng-include,ng-repeat,ng-if,ng-switch,ng-init ng-show/ng-hide,ng-model,n ...
- [转] Angular 4.0 内置指令全攻略
[From] https://segmentfault.com/a/1190000010416792 简书链接 在这篇文章中,我们将分别列举每一个内置指令的用法,并提供一个例子作为演示.尽量用最少最简 ...
- Angular中的内置指令和自定义指令
NG中的指令,到底是什么(what)? 为什么会有(why)?以及怎样使用(how)? What: 在NG中,指令扩展HTML功能,为 DOM 元素调用方法.定义行为绑定数据等. Why: 最大程度减 ...
- AngularJS内置指令
指令,我将其理解为AngularJS操作HTML element的一种途径. 由于学习AngularJS的第一步就是写内置指令ng-app以指出该节点是应用的根节点,所以指令早已不陌生. 这篇日志简单 ...
- angularJS内置指令一览
基础ng指令 ng-href ng-src ng-disabled ng-readonly ng-checked ng-selected ng-class ng-style ng-show ng-hi ...
- AngularJS高级程序设计读书笔记 -- 指令篇 之 内置指令
1. 内置指令(10-12 章) AngularJS 内置超过 50 个内置指令, 包括 数据绑定,表单验证,模板生成,时间处理 和 HTML 操作. 指令暴露了 AngularJS 的核心功能, 如 ...
随机推荐
- Prototype Pattern 原型模式
7.6 原型模式总结 原型模式作为一种快速创建大量相同或相似对象的方式,在软件开发中应用较为广泛,很多软件提供的复制(Ctrl + C)和粘贴(Ctrl + V)操作就是原型模式的典型应用,下面对该模 ...
- iSwifting如何发送照片社区
登录iSwifting社区 1,首先点击"帖子": 2,点击"照片": 3.点击"选择文件上传" 4,上传后的照片: 5,点击上传的照片: ...
- C++ 版本的split_string
vector<string> split_string(const string &in, char del, bool skip_empty) { vector<strin ...
- Java OCR tesseract 图像智能字符识别技术 Java代码实现
接着上一篇OCR所说的,上一篇给大家介绍了tesseract 在命令行的简单用法,当然了要继承到我们的程序中,还是需要代码实现的,下面给大家分享下java实现的例子. 拿代码扫描上面的图片,然后输出结 ...
- Python 显示LinkedIn用户作业
CODE: #!/usr/bin/python # -*- coding: utf-8 -*- ''' Created on 2014-8-18 @author: guaguastd @name: j ...
- Stack-based buffer overflow in acdb audio driver (CVE-2013-2597)
/* 本文章由 莫灰灰 编写,转载请注明出处. 作者:莫灰灰 邮箱: minzhenfei@163.com */ 1. 漏洞描写叙述 音频驱动acdb提供了一个ioctl的系统接口让应用层调用, ...
- 低压电力采集平台DW710C与PC沟通
集电极485接口RS-485与RS-232转换模块485端相连.RS-485与RS-232转换模块232通过串行电缆末端PC的232串口.我们通过书面沟通PC通信软件来实现双方并执行收购方案. 1)上 ...
- 探索WebKit核心(一)------ 新秀开始
为什么WebKit 现在,研究人员WebKit越来越多的人,我不能逃脱,其中还增加.WebKit也多亏了流行的浏览器和WebOS乱斗.随着Palm WebOS, Chrome OS, Firefox ...
- CCProgressTo 和CCProgressTimer
在cocos2d中相同提供了非常多表现图片和精灵的方式,上一篇其中提到的切换场景的方式之中的一个是顺或逆时针切入的方法,在图片上也能够使用,test里有一个样例介绍CCProgressTimer能够实 ...
- Windows 2008 R2安装.NET Framework 4提示灾难性故障解决方法
原因:WINDOWS 2008的安全设置方案取消了C盘根目录的Users权限,只给administrator和system权限,结果在打补丁时就无法更新(安装.net4需要安装windows6.1-K ...