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 的核心功能, 如 ...
随机推荐
- Spark的分布式计算
Spark,Spark是什么,如何使用Spark 1.Spark基于什么算法的分布式计算(很简单) 2.Spark与MapReduce不同在什么地方 3.Spark为什么比Hadoop灵活 4.Spa ...
- ZOJ - 3822 Domination (DP)
Edward is the headmaster of Marjar University. He is enthusiastic about chess and often plays chess ...
- php xss过滤
XSS已知CSS (Cross Site Script) ,跨站点脚本攻击.它指的是恶意攻击者Web插入恶意网页html代码,当用户浏览网页.其中嵌入Web里面html代码运行,从而实现了一些人的攻击 ...
- UVA 1411 - Ants(二分图完美匹配)
UVA 1411 - Ants 题目链接 题意:给定一些黑点白点,要求一个黑点连接一个白点,而且全部线段都不相交 思路:二分图完美匹配,权值存负的欧几里得距离,这种话,相交肯定比不相交权值小,所以做一 ...
- Effective C++ 条款44
本节条款的标题是:将与參数无关的代码抽离templates 学习本节条款首先须要明确一件事情,那就是模板实例化的过程会不会反复? 我们来举个样例: #include<iostream> u ...
- Myeclipse 10/2014 配置插件(svn、maven、properties、velocity)方法
一.构造SVN具体说明 什么是SVN? 管理软件开发过程中的版本控制工具. 以下会以两种方式来介绍怎么安装svn,myeclipse安装SVN插件步骤.以myeclipse 2014为例,第一种是最常 ...
- 【网络流量最大流量】poj3281Dining
/* EK算法版本号,哦,慢.....见下文dinic版本号 ----------------------------------------- 最大的问题是网络流量问题 -------------- ...
- Swift1_关闭
// main.swift // swift1_关闭 // Created by beyond on 15/6/12. // Copyright (c) 2015年 beyond.com All ri ...
- 读书时间《JavaScript高级程序设计》三:函数,闭包,作用域
上一次看了第6章,面向对象.这里接着看第7章. 第7章:函数表达式 定义函数有两种方式:函数声明.函数表达式 //函数声明 function functionName(arg0,arg1,arg2){ ...
- C# 读取IE缓存文件(2)
private void button1_Click(object sender, EventArgs e) { , nBufSize; IntPtr buf; INTERNET_CACHE_ENTR ...