zoukankan      html  css  js  c++  java
  • 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

    sometimes the hardest part isn't letting go,but rather start over
  • 相关阅读:
    gdb高级技巧
    Fira Code字体安装与配置
    回归
    【Luogu】P2292 [HNOI2004]L语言 题解
    浅谈Linux桌面(发行版及桌面环境)
    剑指offer-和为S的连续正数序列-知识迁移能力-python
    剑指offer-数组中只出现一次的数字-数组-python
    剑指offer-数字在排序数组中出现的次数-数组-python
    剑指offer-数组中的逆序对-数组-python
    剑指offer-丑数-穷举-python
  • 原文地址:https://www.cnblogs.com/zhumeiming/p/7294971.html
Copyright © 2011-2022 走看看