Angular4 中内置指令的基本用法

ngFor

作用:像 for 循环一样,可以重复的从数组中取值并显示出来。

// .ts
 
this.userInfo = [‘张三‘, ‘李四‘, ‘王五‘];
 
// .html
 
<div class="ui list" *ngFor="let username of userInfo">
 <div class="item">{{username}}</div>
</div>

  

讲解:

他的语法是 *ngFor="let username of userInfo" ,其中 userInfo 是从中取值的数组,username 是每次从中取出来的值。然后在这个标签里面的内容就会重复执行,并通过双向绑定,将 username 显示出来。

ngIf

作用:根据条件决定是否显示或隐藏这个元素。

// .html
 
<div *ngIf="false"></div>
<div *ngIf="a > b"></div>
<div *ngIf="username == ‘张三‘"></div>
<div *ngIf="myFunction()"></div>

  

讲解:

  • 永远不会显示
  • 当 a 大于 b 的时候显示
  • 当 username 等于 张三 的时候显示
  • 根据 myFunction() 这个函数的返回值,决定是否显示

ngSwitch

作用:防止条件复杂的情况导致过多的使用 ngIf。

// .html
 
<div class="container" [ngSwitch]="myAge">
 <div *ngSwitchCase="‘10‘">age = 10</div>
 <div *ngSwitchCase="‘20‘">age = 20</div>
 <div *ngSwitchDefault="‘18‘">age = 18</div>
</div>

  

讲解:

[ngSwitch] 先与目标进行绑定,ngSwitchCase 列出每个可能性,ngSwitchDefault 列出默认值。

ngStyle

作用:可以使用动态值给特定的 DOM 元素设定 CSS 属性。

// .ts
backColor: string = ‘red‘;
 
// .html
<div [style.color]="yellow">
 你好,世界
</div>
<div [style.background-color]="backColor">
 你好,世界
</div>
<div [style.font-size.px]="20">
 你好,世界
</div>
<div [ngStyle]="{color: ‘white‘, ‘background-color‘: ‘blue‘, ‘font-size.px‘: ‘20‘}">
 你好,世界
</div>

  

讲解:

  • 直接设置颜色为 yellow。
  • 设置背景颜色为 backColor,并可以在 .ts 文件中对 backColor 的值进行修改。
  • 设置字体大小,需要注意的是 只写 font-size 会报错,必须在后面加上 .px。当然 .em .% 都是可以的。
  • 前三种都是只设置一个,写 [ngStyle] 可以同时写多个,使用花括号包住里面的内功。需要注意的是连字符 - 是不允许出现在对象的键名当中的,如果使用 background-color 等时需要加上单引号。

ngClass

作用:动态地设置和改变一个给定 DOM 元素的 CSS类。

// .scss
.bordered {
 border: 1px dashed black;
 background-color: #eee;
}
 
// .ts
isBordered: boolean = true;
  
// .html
<div [ngClass]="{bordered: isBordered}">
 是否显示边框
</div>

  

讲解:

  • scss 中设置了样式,相当于你建了一个 class="bordered"
  • ts 中新建了一个 isBordered,用于判断是否显示 .scss 中的样式。
  • html 中用 isBordered 作为 bordered 是否显示 的判断依据。

ngNonBindable

作用:告诉 Angular 不要绑定页面的某个部分。

.html
 
<div ngNonBindable>
 {{我不会被绑定}}
</div>

  

讲解:

使用了 ngNonBindable ,花括号就会被当做字符串一起显示出来。

原文链接:http://www.jianshu.com/p/4cc3a04ca83a

时间: 2025-01-12 19:22:55

Angular4 中内置指令的基本用法的相关文章

Angular中的内置指令和自定义指令

NG中的指令,到底是什么(what)? 为什么会有(why)?以及怎样使用(how)? What: 在NG中,指令扩展HTML功能,为 DOM 元素调用方法.定义行为绑定数据等. Why: 最大程度减少DOM操作,实现数据绑定,与业务逻辑进行交互. How: 指令主要分为两种:内置指令和自定义指令,通过下面的例子,简单记录一下如何去使用. 内置指令 在官方API文档上罗列了很多指令,内置指令可以分为:普通指令 和 事件指令,他们都是作用于HTML之上的,通过添加属性的方式来实现的.简单看一下一些

AngularJS中的内置指令

AngularJS可以把模版编写成HTML的形式,利用指令来拓展HTML标签,增加声明式语法来实现想做的任何事情.AngularJS的内置指令包括渲染指令.事件指令和节点指令. 渲染指令 ng-bind: <p ng-bind="something"></p> 相当于: <p>{{something}}</p> ng-bind-template: 如果用ng-bind-template,则相当于: <p ng-bind-templa

vue内置指令详解——小白速会

指令 (Directives) 是带有 v- 前缀的特殊属性,职责是,当表达式的值改变时,将其产生的连带影响,响应式地作用于 DOM. 内置指令 1.v-bind:响应并更新DOM特性:例如:v-bind:href  v-bind:class  v-bind:title  等等 主要用法是绑定属性,动态更新HTML元素上的属性: <a v-bind:href="url">...</a> <!-- 缩写 --> <a :href="ur

AngularJS内置指令集合

ng-model 将表单控件和当前作用域的属性进行绑定 代码如下: <input type="text" ng-model="someModel.someProperty" /><br>{{someModel.someProperty}} ng-init 该指令被调用时会初始化内部作用域.这个指令一般会出现在比较小的应用中,比如给个demo什么的... 代码如下: <div ng-init="job='fighter'&quo

Angular2 内置指令 NgFor 和 NgIf 详解

http://www.jb51.net/article/89781.htm 在这一章节中,我们来学习如何使用Angular2来展示数据,以及如何使用它的内置指令NgFor和NgIf 首先要确保你有一个可以运行起来的Angular2的样例程序,最好就是我们上一章节中完成的那个QuickStart小项目或者你自己根据官网上面的步骤完成的QuickStart小项目,因为我们的讲解都是在那个基础上来进行的;然后让我们开始下面的快乐旅程吧. 因为我们的这一系列的文章都是使用的Typescript所以在看下

Angular内置指令

以ng前缀开头的都是内置指令,因此不要以ng开头命名自定义指令.此外还有其他内置指令在标签中不易发现,如<a>和<form>. 一,布尔属性 1  ng-disabled 可以在input,textarea,select,button绑定 例一:按钮一直禁用,直到用户在文本字段中输入内容 <input type="text" ng-model="someProperty" placeholder="TypetoEnable&q

AngularJS内置指令

内置指令 所有的内置指令的前缀都为ng,不建议自定义指令使用该前缀,以免冲突.首先从一些常见的内置指令开始.先列出一些关键的内置指令,顺便简单说说作用域的问题. ng-model 将表单控件和当前作用域的属性进行绑定,这么解释似乎也不太正确.但先不要管咬文嚼字,用起来倒是易懂,例如: 代码如下: <input type="text" ng-model="someModel.someProperty" /><br>{{someModel.som

AngularJS 内置指令(二)

下面将要介绍的指令会以父级作用域为原型生成子作用域.这种继承的机制可以创建一个隔 离层,用来将需要协同工作的方法和数据模型对象放置在一起. ng-app 和ng-controller是特殊的指令,因为它们会修改嵌套在它们内部的指令的作用域. ng-app 为AngularJS应用创建$rootScope,ng-controller则会以$rootScope或另外一个 ng-controller 的作用域为原型创建新的子作用域. 1. 子作用域: <!doctype html> <html

Angular内置指令(一)

要注意的是不要把自己开发的指令以ng开头,以免与内置指令冲突  目录:ng-disabled,ng-readonly,ng-checked,ng-selected,ng-href,ng-src,ng-class,ng-style ng-disabled 当它的值返回true时表示禁用当前元素,返回false时什么都不做 <body> <!--在文本框输入内容时禁用按钮--> <input type="text" ng-model="name&qu