`

anjular directory

阅读更多

指令是AngularJS操作HTML element的一种命令通知。AngularJS内置指令ng-app是应用的根节点

 

内置指令

所有的内置指令的前缀都为ng:

ng-model

将表单控件和当前作用域的属性进行绑定

代码如下:

<input type="text" ng-model="someModel.someProperty" /><br>
{{someModel.someProperty}}

ng-init

初始化内部作用域

代码如下:

<div ng-init="job='fighter'">
    I'm a/an {{job}}
</div>

ng-app

每一次用AngularJS都离不开这个指令,顺便说下$rootScope。
声明了ng-app的元素会成为$rootScope的起点,而$rootScope是作用域链的根,ta下的作用域都可以访问它。

代码如下:

<html ng-app="myApp">
<body>
    {{ someProperty }}
</body>
<script>
var myApp = angular.module('myApp', [])
.run(function($rootScope) {
    $rootScope.someProperty = 'hello computer';
}); 
</script>
</html>

ng-controller

在一个DOM元素上装上controller

代码如下:

function ohMyController($scope) {
    //...
}

AngularJS 1.3.x中禁止了这种方式,因为这种方式会让controller满天飞,分不清层次,所有东西都挂在$rootScope上
ng-controller必须有一个表达式作为参数,另外通过$scope来继承上级$scope的方法和属性什么的,$rootScope也包括在内。
下面只是一个简单的例子,ancestor无法访问child的作用域。

 

代码如下:

<div ng-controller="AncestorController">
    {{ ancestorName }}
    {{ childName }}
    <div ng-controller="ChildController">
        {{ ancestorName }}
        {{ childName }}
    </div>
</div>
<script>
var myApp = angular.module('myApp', [])
.controller('ChildController', function($scope) {
    $scope.childName = 'child';
})
.controller('AncestorController', function($scope) {
    $scope.ancestorName = 'ancestor';
});
</script>

ng-form

代码如下:

<input type="submit" ng-disabled="mainForm.$invalid" />

也就是表单的状态为$invalid时禁用提交按钮。

代码如下:

<form name="mainForm" novalidate>
    <div ng-form="form1">
        姓名:<input type="text" ng-required="true" ng-model="name"/><br>
        证件号码:<input type="number" ng-minLength="15" ng-maxLength="18" ng-required="true" ng-model="idnum"/>
    </div>
    <br>
    <div ng-form="form2">
        监护人姓名:<input type="text" ng-required="true" ng-model="gname"/><br>
        监护人证件号码:<input type="number" ng-minLength="15" ng-maxLength="18" ng-required="true" ng-model="gidnum"/>
    </div>
    <button ng-disabled="form1.$invalid && form2.$invalid">submit all</button>
</form>

ng-disabled

只要出现则生效的属性,我们可以在AngularJS中通过表达式返回值true/false令其生效。

代码如下:

<textarea ng-disabled="1+1==2">1+1=?</textarea>

ng-readonly

表达式返回值true/false将表单输入字段设为只读

代码如下:

<input type="text" ng-readonly="stopTheWorld" value="stop the world after 3s"/>
.run(function($rootScope,$timeout){
    $rootScope.stopTheWorld=false;
    $timeout(function(){
        $rootScope.stopTheWorld = true;
    },3000)
})

ng-checked

这个是给<input type="checkbox" />用的

代码如下:

<input type="checkbox" ng-checked="someProperty" ng-init="someProperty = true" ng-model="someProperty">

ng-selected

给<select>里面的<option>用的

代码如下:

<label>
    <input type="checkbox" ng-model="isFullStack">
    I'm Full Stack Engineer
</label>
<select>
    <option>Front-End</option>
    <option>Back-End</option>
    <option ng-selected="isFullStack">Full Stack !!!</option>
</select>

ng-show/ng-hide

根据表达式显示/隐藏HTML元素,注意是隐藏,不是从DOM移除

代码如下:

<div ng-show="1+1 == 2">
    1+1=2
</div>
<div ng-hide="1+1 == 3">
    you can't see me.
</div>

ng-change

不是HTML那套onXXX之类的,而是ng-XXX

代码如下:

<input type="text" ng-model="calc.arg"  ng-change="calc.result = calc.arg*2" />
    <code>{{ calc.result }}</code>

或者比如ng-options

{{}}

其实这个也是一个指令,也许觉得和ng-bind差不多,但页面渲染略慢时可能会被看到。
另外,{{}}的performance远不如ng-bind,只是用起来很方便。

ng-bind

ng-bind的行为和{{}}差不多,只是我们可以用这个指令来避免FOUC(Flash Of Unrendered Content),也就是未渲染导致的闪烁。

ng-cloak

ng-cloak也可以为我们解决FOUC。 ng-cloak会将内部元素隐藏,直到路由调用对应的页面。

ng-if

如果ng-if中的表达式为false,则对应的元素整个会从DOM中移除而非隐藏,但审查元素时你可以看到表达式变成注释了。
如果相进行隐藏,可以使用ng-hide。

代码如下:

<div ng-if="1+1===3">
    无法审查到该元素
</div>
<div ng-hide="1+1==2">
    可审查
</div>

ng-switch

代码如下:

<div ng-switch on="1+1">
    <p ng-switch-default>0</p>
    <p ng-switch-when="1">1</p>
    <p ng-switch-when="2">2</p>
    <p ng-switch-when="3">3</p>
</div>

ng-repeat

遍历集合,给每个元素生成模板实例,每个实例的作用域中可以用一些特殊属性

代码如下:

$index
$first
$last
$middle
even
odd
代码如下:

<ul>
    <li ng-repeat="char in 
    [{'alphabet': 'K'},
    {'alphabet': 'A'},
    {'alphabet': 'V'},
    {'alphabet': 'L'},
    {'alphabet': 'E'},
    {'alphabet': 'Z'}] " ng-show="$even">{{char.alphabet}}</li>
</ul>

ng-href

起初我在一个文本域中弄了个ng-model,然后像这样<a href="{{myUrl}}">在href里面写了进去

代码如下:

<ul ng-init="myHref=''">
    <li><a ng-href="{{ myHref }}">{{linkText}}</a></li>
    <li><a href="{{ myHref }}">可以点击,但不一定是正确的地址</a></li>
</ul>
.run(function($rootScope, $timeout) {
    $rootScope.linkText = '尚未加载,您无法点击';
    $timeout(function() {
        $rootScope.linkText = '请点击'
        $rootScope.myHref = 'http://google.com';
    }, 2000);
})

ng-src

大同小异,即表达式生效前不要加载该资源

代码如下:

<img ng-src="{{imgSrc}}"/>
.run(function($rootScope, $timeout) {
    $timeout(function() {
        $rootScope.imgSrc = 'https://octodex.github.com/images/daftpunktocat-guy.gif';
    }, 2000);
})

ng-class

用作用域中的对象动态改变类样式

代码如下:

<style>
    .red {background-color: red;}
    .blue {background-color: blue;}
</style>
<div ng-controller="CurTimeController">
    <button ng-click="getCurrentSecond()" >Get Time!</button>
    <p ng-class="{red: x%2==0,blue: x%2!=0}" >Number is: {{ x }}</p>
</div>
.controller('CurTimeController', function($scope) {
    $scope.getCurrentSecond = function() {
        $scope.x = new Date().getSeconds();
    };
})  
0
0
分享到:
评论

相关推荐

    Directory Opus 12 文档预览 office预览 插件

    Directory Opus是一款强大的文件管理器,它为用户提供了一种高效且功能丰富的替代Windows资源管理器的方式。这款软件以其高度自定义的界面、强大的文件操作功能和广泛的文件预览支持而闻名。"Directory Opus 12 文档...

    安装Active Directory 安装Active Directory 安装Active Directory

    安装Active Directory 安装Active Directory 安装Active Directory

    IMAGE_DATA_DIRECTORY DataDirectory

    小甲鱼在讲解解密系列系统篇中用到的IMAGE_DATA_DIRECTORY DataDirectory元素索引对应的内容

    Apache Directory Server使用指南

    Apache Directory Server 使用指南 Apache Directory Server 是一个基于 Java 语言的开源 LDAP 服务器,由 Apache 软件基金会开发和维护。该服务器提供了一个完整的目录解决方案,包括目录服务器、目录工具和其他...

    Directory Opus Pro 12.33 学习版

    Directory Opus Pro是一个功能十分强劲的文件可视化工具,Directory Opus有着和Windows资源管理器相近的页面,支持:拷贝、挪动、删掉、改名、搜索、检索、访问、缩小、压缩包解压、切分、合拼、立即邮件发送、缩小...

    Directory Opus 12.x Patch

    Directory Opus(最好的文件管理器之一) 简繁体中文破解版(32位和64位) 是可与 Total Commander 相媲美的文件管理器。其总体水平与TC持平,称得上双峰对峙、二水分流。但在易用性、现代性、内置功能(相比插件实现...

    Directory Opus 12.6 破解版

    安装程序由 NSIS 封装,封装了Directory Opus文件管理器安装版和便携版。安装包有个人习惯设置,请自行决定是否要继续安装。 Directory Opus这是一个强大的文件管理软件,支持标签页,多窗口,色彩标记文件夹和文件...

    active directory安装包(域控制器补丁)

    **Active Directory:基础概念与重要性** Active Directory(AD)是微软Windows Server操作系统中的一个核心组件,它是一种目录服务,用于存储和管理网络资源的信息。AD使得管理员能够集中控制网络中的用户账户、...

    Directory Opus插件Everything

    Directory Opus插件Everything 最新带安装说明 directory opus是最好的资源管理器 Everything是最好的文件搜索工具 现在可以将Everything集成到Directory Opus中

    Novell.Directory.Ldap.dll

    《深入理解Novell.Directory.Ldap.dll在C#中的应用》 Novell.Directory.Ldap.dll是C#编程中用于访问Directory(目录服务)或eDirectory(Novell的企业级目录服务)的重要组件,它提供了一组丰富的类和方法,使得...

    Active Directory Cookbook, 3rd Edition.pdf

    Chapter 18, Active Directory Application Mode and Active Directory Lightweight Directory Service Covers the new Active Directory Application Mode (ADAM) functionality that’s available with R2. ...

    DirectoryTree插件-jquery树形滑动导航

    DirectoryTree插件是基于jQuery的一款强大且灵活的树形滑动导航工具,它在网页设计中广泛用于构建层次结构清晰的目录或者导航菜单。这款插件可以帮助开发者轻松地创建交互式的、可折叠的树状视图,使得用户可以便捷...

    C# Directory类的操作

    C# Directory类的操作 C# Directory类是System.IO命名空间中的一个类,它提供了在目录和子目录中进行创建、移动和列举操作的静态方法。此外,还可以访问和操作各种各样的目录属性,例如创建或最后一次修改时间以及...

    Windows Server 2016 Active Directory配置指南.rar

    在IT领域,Windows Server 2016是微软推出的一款企业级操作系统,它包含了众多用于构建和管理网络基础设施的关键服务,其中最重要的就是Active Directory(AD)域服务。本指南将深入探讨如何配置Windows Server 2016...

    Active Directory详细教程

    Active Directory 详细教程 Active Directory 是微软的一种目录服务,能够提供身份验证、授权和资源管理等功能。在企业中,Active Directory 广泛应用于域管理、资源共享和身份验证等方面。本文将对 Active ...

    Active Directory系列教程

    ### Active Directory系列教程知识点概述 #### 一、为何需要Active Directory(AD)域管理模型? 在探讨Active Directory之前,我们首先要理解为什么要引入这样的管理模型。对于很多初学者来说,理解域的概念及其...

    DNS 服务器无法打开 Active Directory

    DNS 服务器无法打开 Active Directory

    Sun Directory

    标题:"Sun Directory" 描述:"OIM Sun Directory Connector" 知识点详细说明: ### 1. Oracle Identity Manager (OIM) Oracle Identity Manager是Oracle公司提供的一款企业级身份管理解决方案,它旨在帮助企业...

    Directory Opus 12.6 Crack

    Directory Opus 12是一款功能强大的文件管理器。该软件界面简洁,使用方便。能够帮助用户朋友快速处理电脑文件,强力的搜索功能让每一个文件都无处可逃,并且能够轻松管理,执行各种可行性操作,简单方便实用,为你...

    Active Directory 循序渐进系列指南.rar

    《Active Directory 循序渐进系列指南》是一个深入学习和理解Windows操作系统中核心组件——Active Directory(活动目录)的综合教程。本指南旨在帮助IT专业人员逐步掌握如何规划、部署、管理和维护Active Directory...

Global site tag (gtag.js) - Google Analytics