1.指令

ng-app,ng- 都是angular的指令系统
ng-app: ng-app是angular的初始化,一个页面只能有一个ng-app,位置不限制。在页面上加入了这个执行,那么从当前的元素以及儿子元素,都交给angular管理,不赋值的话,会有一个默认模块。
ng-app="myApp"这里如果加了自定义的名字,那么必须创建对应的模块。
ng-model:双向绑定数据

ng-init:给字段赋予初始值。ng-init=”val=0”。

ng-bind:单向绑定,只能用于双标签,如果要在单标签上使用,那么我们就使用表达式,表达式有一个闪烁的问题,它渲染在html的双标签位置。与{{}}的作用一样显示数据。

写法有:ng-bind  data-ng-bind  x-ng-bind

{{表达式}}:用于显示数据。

一次性数据绑定:{{::表达式}}

ng-controller控制器,链接数据的的桥梁

ng-bind

ng-cloak

ng-bind-template

ng-bind-html

http://www.bootcdn.cn/angular.js/

不同于以上的功能性指令,Angular还定义了一些用于和事件绑定的指令:

- ng-blur:失去焦点

- ng-change:发生改变

- ng-copy: 拷贝完成

- ng-click:单击

- ng-dblclick:双击

- ng-focus: 得到焦点

- ng-submit:

ng-click/dblclick

ng-mousedown/up

ng-mouseenter/leave

ng-mousemove/over/out

ng-keydown/up/press

ng-focus/blur

ng-submit

2.指令闪烁 ng-cloak

解决表达式闪烁的问题

1. Class=”ng-cloak”

2.在对应的标签中加上 ng-cloak指令即可。

虽然ng-bind 能解决 {{}} 闪现的问题,但是 ng-bind不能用单标签 ng-bind 只能用于双标签,在单标签上是无法解决
  在单标签上,为了解决闪现表达的可以使用 ng-cloak,也可以在表标签上加上 class="ng-cloak"

<input type="text" ng-model="name" ng-cloak/>

3.ng-class ng-class-even ng-class-odd

ng-class 实现多个选择多个 {"red":true,"font":true}
如果值为True表示可用,否则false 不可以用
ng-class {"A":red,"B":green}[A] 多选择一个样式

<li ng-repeat="x in data" ng-class='{a:"blue",b:"green",c:"pink"}[x.main]'>{{x.title}}</li>
$scope.data=[ {title:"标题", main:"a"}, {title:"标题1", main:"b"}, {title:"标题2", main:"c"} ];

4.ng-repeat 指令

js控制器里定义一个data数据:

angular.module("myApp",[]).controller("testContoller",function($scope){
$scope.data=[
{title:"标题", main:"主要内容"},
{title:"标题1", main:"主要内容1"},
{title:"标题2", main:"主要内容2"}
]
});

第一种使用:

<p ng-repeat="a in data" ng-cloak>{{a.title}},{{a.main}}</p>

第二种使用:

如果使用ng-repeat-start那么必须要结合ng-repeat-end

<div ng-repeat-start="o in data"></div>
<p ng-cloak>{{o.title}}</p>
<div ng-repeat-end=""></div>
<ul>

    <li ng-repeat="obj in data" ng-class="$even==true?'pink':obj.color " >{{obj.name}}</li>

</ul>

$even:奇数行$even的值为true,偶数行为false;

$odd:奇数行$odd的值为false,偶数行为true;

5.ng-show ng-hide

ng-show :默认值是隐藏;布尔值为true时显示
ng-hide:默认值是显示;布尔值为true时隐藏

<div ng-show>测试盒子</div>

6.ng-if

ng-if:值为true的时候显示,为false时该元素及其所有子元素被移除;默认为false。

<div  ng-if="true">测试盒子</div>

<p ng-if="false">
2222
<span>11111</span>
</p>

7.ng-switch

<!--当data.name为1时,第一个span显示,当输入的data.name为2时第二个span显示-->

<div ng-switch="data.name">
<input type="text" ng-model="data.name"/><br/>
<span ng-switch-when="1">{{data.names}}</span>
<span ng-switch-when="2">{{data.namess}}</span>
</div> $scope.data={
name:"",
names:"张三",
namess:"小明"
}

8.ng-checked

9.ng-include

语法

<element ng-include="filename" onload="expression" autoscroll="expression" ></element>

ng-include 指令作为元素使用:

<ng-include src="filename" onload="expression" autoscroll="expression" ></ng-include>

所有的 HTML 元素都支持该指令。

参数值

描述

filename

文件名,可以使用表达式来返回文件名。

onload

可选, 文件载入后执行的表达式。

autoscroll

可选,包含的部分是否在指定视图上可滚动。

10.ng-copy

元素文本被拷贝时执行的表达式。

<element ng-copy="expression"></element>

angular ng指令的更多相关文章

  1. Angular自定义指令(directive)

    angular自定义指令,意我们可以通过angula自己定义指令,来实现我们的特殊要求,为所欲为,一支穿云箭,千军万马来相见 多少年的老规矩了,先看代码: <!DOCTYPE html> ...

  2. angular 自定义指令详解 Directive

    在angular中,Directive,自定义指令的学习,可以更好的理解angular指令的原理,当angular的指令不能满足你的需求的时候,嘿嘿,你就可以来看看这篇文章,自定义自己的指令,可以满足 ...

  3. angular学习的一些小笔记(中)之基础ng指令

    一.布尔属性指令: ng-disabled:就是ng-disabled=true-->就指向不可用 <!doctype html> <html ng-app="&qu ...

  4. Angular学习-指令入门

    1.指令的定义 从用户的角度来看,指令就是在应用的模板中使用的自定义HTML标签.指令可以很简单,也可以很复杂.AngularJS的HTML编译器会解析指令,增强模板的功能.也是组件化未来的发展趋势, ...

  5. angularjs中常用的ng指令介绍【转载】

    原文:http://www.cnblogs.com/lvdabao/p/3379659.html 一.模板中可使用的东西及表达式 模板中可以使用的东西包括以下四种: 指令(directive).ng提 ...

  6. Angular之指令Directive系列

    项目筹备近期开启Angular学习,指令比较难理解所以记录备案,推荐Angualr实战学习视频大漠穷秋 Angular实战 一.指令directive概述 指令可以对元素绑定事件监听或者改变DOM结构 ...

  7. Angular17 Angular自定义指令

    1 什么是HTML HTML文档就是一个纯文本文件,该文件包含了HTML元素.CSS样式以及JavaScript代码:HTML元素是由标签呈现,浏览器会为每个标签创建带有属性的DOM对象,浏览器通过渲 ...

  8. 将地图定位封装为ng指令

    一.HTML结构<div tabindex="-1" class="modal fade in active modal-map" role=" ...

  9. Angular 自定义指令传参

    <!DOCTYPE html><html ng-app="myApp"><head lang="en"> <meta ...

随机推荐

  1. Linx 的组管理和权限管理

    Linux组基本介绍 在linux中的每个用户必须属于一个组,不能独立于组外.在linux中每个文件 有所有者.所在组.其它组的概念. 1) 所有者 2) 所在组 3) 其它组 4) 改变用户所在的组 ...

  2. 使用 WebClient 來存取 GET,POST,PUT,DELETE,PATCH 網路資源

    WebClient 基本資訊 提供通用方法使用 WebRequest 類別傳送及接收 URI (支援 http:, https:, ftp:,和 file: ) 的資源 Namespace:Syste ...

  3. 分享到QQ空间和新浪微博功能

    分享到QQ空间 http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url=http://campus.51job.com/cmbnt ...

  4. linux操作python

    Linux安装python3: sudo apt-get install python3.5 安装python库 sudo apt-get install python3-setuptools sud ...

  5. Pycharm 导入 Python 包、模块

    1.点击File->settings 2.选择Project Interpreter,点击右边绿色的加号添加包 3.输入你想添加的包名,点击Install Package 4.可以在Pychar ...

  6. erlang随笔3--OTP

    OTP最核心的概念就是行为.一个行为封装了某种常见的行为模式.可以把这些行为理解为某种应用程序框架.可以通过回调模块来 定制这些框架.OTP依靠行为引用了容错,扩容和动态代码升级等特性.所以在写回调模 ...

  7. 3dsmax2016卸载/安装失败/如何彻底卸载清除干净3dsmax2016注册表和文件的方法

    3dsmax2016提示安装未完成,某些产品无法安装该怎样解决呢?一些朋友在win7或者win10系统下安装3dsmax2016失败提示3dsmax2016安装未完成,某些产品无法安装,也有时候想重新 ...

  8. MCD的正确格式

    [[99NN/etWLLP/33qnzb/eMNf5mwlh9hUsT+FYsTIU15REWiQd99vwIyZqDUDIRtvsgCP0BXDlvHJlbDR+NPhyL50wS2ThIiEwD/ ...

  9. Unity QualitySettings.shadows 阴影

    QualitySettings.shadows 阴影 public static ShadowQuality shadows; Description 描述: 要使用的实时阴影类型. 这就决定了应该使 ...

  10. 使用discover批量执行用例

    TestLaoder 该类负责根据各种条件加载测试用例,并将它们返回给测试套件,正常情况下,不需要创建这个类的实例,unittest提供了可以共享的defaultTestLoader类,可以使用其子类 ...