第3章 指令

  • 所谓指令就是AngularJS自定义的HTML属性或标签,这些指令都是以ng-做为前缀的,例如ng-app、ng-controller、ng-repeat等。

3.1 内置指令

  • ng-app 指定应用根元素,至少有一个元素指定了此属性。

  • ng-controller 指定控制器

  • ng-show控制元素是否显示,true显示、false不显示

  • ng-hide控制元素是否隐藏,true隐藏、false不隐藏

  • ng-if控制元素是否“存在”,true存在、false不存在

  • ng-src增强图片路径

  • ng-href增强地址

  • ng-class控制类名

  • ng-include引入模板

  • ng-disabled表单禁用

  • ng-readonly表单只读

  • ng-checked单/复选框表单选中

  • ng-selected下拉框表单选中

  • 【示例1】

<body ng-app="App">  <!--指定应用根元素,至少有一个元素指定了此属性-->

<!--由于浏览器加载顺序问题,显示内容时会产生闪烁-->

	<ul ng-controller="DemoController">  <!--定义控制器-->
<li ng-bind="name">绑定数据变量,显示结果与{{name}}一样</li>
<li>{{name}}</li>
<li ng-show="1">ng-show用来显示过程隐藏内容的,当值为true时显示</li>
<li ng-hide="1">ng-hide用来隐藏内容,当值为true时隐藏</li>
<li ng-if="1">ng-if用来控制元素是否存在,当值为true时存在</li>
<li><img ng-src="{{path}}" alt="">ng-src用来增强图片路径,使用ng-src而不适用src的原因是src在页面从上到下加载时就会直接请求src的资源,如果所给的是像path这样的变量路径,那么在第一次请求之后没有请求到需要的内容,在执行到script时还会再加载一遍,浪费资源,而ng-src不会直接被浏览器识别,只有在script的内容加载玩后才会显示,href同理</li>
<li ng-class="{red:true}">控制类名:ng-class="{}"中单括号表示对象</li>
</ul> <script src="./libs/angular.min.js"></script>
<script> //创建Model
var App = angular.module('App', []); //Controller
App.controller('DemoController', ['$scope', function ($scope) { //$scope
$scope.name = 'itcast';
$scope.path = './images/author.jpg';
$scope.link = '#';
$scope.red= 'red'; }]); </script>
</body>
  • 【示例2】ng-include
<body ng-app="App">

	<div ng-include="'./header.html'"></div>

	<section>主体</section>

	<div ng-include="'./footer.html'"></div>

	<script src="./libs/angular.min.js"></script>
<script> var App = angular.module('App', []); </script>
</body>

3.2 自定义指令

  • 语法:App.directive('tag', function(){});

  • 示例:

// 通过模块实例对象的directive方法可以自定义指令
App.directive('tag', function () { // 返回一个对象,这个对象就是自定义指令相关的内容
return {
// E element——元素
// A attribute——属性
// C class——类
// M mark replace——备注,必须为true
restrict: 'ECMA',
// template: '<ul><li>首页</li><li>列表</li></ul>',
templateUrl: './list.html'
// replace: true
} });

AngularJS——第3章 指令的更多相关文章

  1. 带你走近AngularJS - 创建自己定义指令

    带你走近AngularJS系列: 带你走近AngularJS - 基本功能介绍 带你走近AngularJS - 体验指令实例 带你走近AngularJS - 创建自己定义指令 ------------ ...

  2. 带你走近AngularJS 之创建自定义指令

    带你走近AngularJS 之创建自定义指令 为什么使用AngularJS 指令? 使用过 AngularJS 的朋友应该最感兴趣的是它的指令.现今市场上的前端框架也只有AngularJS 拥有自定义 ...

  3. AngularJS常用插件与指令收集

    angularjs 组件列表 bindonce UI-Router Angular Tree angular-ngSanitize模块-$sanitize服务详解 使用 AngularJS 开发一个大 ...

  4. angularjs 创建自定义的指令

    创建自定义的指令 除了 AngularJS 内置的指令外,我们还可以创建自定义指令. 你可以使用 .directive 函数来添加自定义的指令. 要调用自定义指令,HTMl 元素上需要添加自定义指令名 ...

  5. AngularJS:directive自定义的指令

    除了 AngularJS 内置的指令外,我们还可以创建自定义指令. 你可以使用 .directive 函数来添加自定义的指令. 要调用自定义指令,HTML 元素上需要添加自定义指令名. 使用驼峰法来命 ...

  6. AngularJS的表达式、指令的学习(2)

    最近没有那么忙,就来系统学习一下AngularJS吧,昨天简单的认识了一下,今天就从表达式入手吧,嘿嘿. 一.AngularJS 表达式 AngularJS表达式写在双大括号内:{{expressio ...

  7. AngularJS——第9章 模块加载

    第9章 模块加载 AngularJS模块可以在被加载和执行之前对其自身进行配置.我们可以在应用的加载阶段配置不同的逻辑. [AngularJS执行流程] 启动阶段(startup) 开始 --> ...

  8. AngularJS——第4章 数据绑定

    第4章 数据绑定 AngularJS是以数据做为驱动的MVC框架,所有模型(Model)里的数据经由控制器(Controller)展示到视图(View)中. 所谓数据绑定指的就是将模型(Model)中 ...

  9. AngularJS——第2章 模块化

    第2章 模块化 使用AngularJS构建应用时是以模块化的方式组织的,即将整个应用划分成多个小模块,各个模块有各自的职责,最终实现完整的应用. 2.1 定义应用 通过为任一HTML标签添加ng-ap ...

随机推荐

  1. Redis-stat 的安装与使用

    一.ruby源码安装 下载最新版的 Ruby 压缩文件.请点击这里下载. 下载 Ruby 之后,解压到新创建的目录下: $ tar -xvzf ruby-2.2.3.tgz $ cd ruby-2.2 ...

  2. codes often WA

    枚举: 1.完美立方 #include<iostream> #include <cstdio> using namespace std; int main() { int N; ...

  3. 【378】python any() and all()

    Reference: [1] Python all() - Python Standard Library [2] Python any() - Python Standard Library all ...

  4. JSP报错Syntax error, insert ";" to complete Statement

    org.apache.jasper.JasperException: Unable to compile class for JSP: An error occurred at line: 7 in ...

  5. 函数传参传的是啥的思考【java Python】

    今天看<java 核心 卷1>的时候,作者提到了函数传参的问题,他提到,java传参,传的是值,而不是引用,然后,函数将要传的实参的值(如果实参是基本数据类型,那么就是值.如果实参是对象, ...

  6. VC++ MFC如何生成一个可串行化的类

    一.MFC允许对象在程序运行的整个过程中持久化的串行化机制(1)串行化是指向持久化存储媒介(如一个磁盘文件)读或写对象的过程.(2)串行化用于在程序运行过程时或之后修复结构化数据(如C++类或结构)的 ...

  7. Windows组件下载地址

    Windows下载中心 http://www.microsoft.com/zh-cn/download/default.aspx IE10下载地址 http://www.microsoft.com/z ...

  8. 有关于分布式和SOA的理解

    我的理解分布式和SOA都差不多,类似功能独立分开.举个例子,做一辆车,按照传统模式,先生产车架,然后生产车轮..然后一辆车完成.现在分布式就是生产车架与生产车轮分离,所有的材料 就是最后一次组装的时候 ...

  9. you-get

    1.打开cmd,输入命令并执行 pip3 install you-get 2.输入命令,检测 You-Get 是否安装成功 you-get 3.开始下载吧 you-get [视频地址]you-get ...

  10. Memory Controller

    1.S3C6410 地址空间 For memory at the table details 2. SDRAM图解 3. SDRAM 芯片容量计算: L_BANK 数目 * 一个 L_BANK 中的单 ...