Angular4學習教程之HTML屬性綁定的方法
前言
本文主要給大家介紹了關于Angular4 HTML屬性綁定的相關內容,分享出來供大家參考學習,下面話不多說了,來一起看看詳細的介紹吧。
簡介
基本HTML屬性
<td [attr.colspan]="tableColspan"></td>
Css 類綁定
<!-- 第一種情況 class 類全部替換 --> <div [class]="divClass">CSS 類綁定,[class] 全部替換的例子</div> <!-- 第二種情況 替換 class 類的部分屬性 --> <div [class.a]="isSpcial">CSS 類綁定,[class.sepcial] 部分替換的例子</div> <!-- 第三種情況 根據表達式顯示部分 class 屬性--> <div [ngClass]="{a:isA, b:isB}">CSS 類綁定,[ngClass] 替換多個的例子</div>
Style 屬性綁定
<!-- 替換部分的 Style --> <button [style.color]="isSpecial ? 'red' : 'green'" ]>Red</button> <!-- 替換所有的樣式 --> <button [ngStyle]="{'font-style':this.canSave? 'italic' : 'normal'}" ]>Red</button>
HTML屬性綁定
<td [attr.colspan]=”tableColspan”>Something</td>
tableColspan 是一個表達式,當界面在渲染的時候會將 tableColspan的值綁定到 attr后面的 colspan 上面去
修改 bind.component.html
<!-- 增加代碼 --> <div> <div>[attr.colspan] 例子:</div> <table border="1px"> <tr> <td [attr.colspan]="colspanSize">跨列的例子</td> </tr> <tr> <td>單元格1</td> <td>單元格1</td> </tr> </table>
圖示:
Css 類綁定
第一種情況
[calss]
someExpression 的值會完全替換掉 class的值。
修改 bind.component.css
.a{background-color: #A7A9AE;} .b{color: #488aff;} .c{font-size: 1rem;}
修改bind.component.html
<!-- 增加代碼 --> <div> <div>CSS 類綁定例子1:[class]</div> <div [class]="divClass">CSS 類綁定,[class] 全部替換的例子</div> </div>
修改 bind.component.ts
divClass: string; constructor() { //在3秒鐘之后將樣式設置為 " a b c " setInterval(()=>{ this.divClass = "a b c"; }, 3000) }
圖示:
第二種情況
[calss.special]
isSpecial 是一個 boolean,當 isSpecial 為 true 的時候會出現 special 的值,為 false的時候不會出現。
修改bind.component.html
<!-- 增加代碼 --> <div [class.a]="isSpcial">CSS 類綁定,[class.sepcial] 部分替換的例子</div>
修改 bind.component.ts
divClass: string; isSpcial: boolean = false; constructor() { setInterval(()=>{ this.divClass = "a b c"; //在 3秒鐘之后顯示樣式 this.isSpcial = true; }, 3000) }
圖示:
第三種情況
[ngClass]="{aaa:isA, bbb: isB}"
aaa 是指標簽上面class 的屬性值,isA 就boolean, 只有當 isA 為 true 的時候才會顯示 aaa 屬性。 同理,bbb 也是一樣。
修改bind.component.html
<!-- 增加代碼 --> <div [ngClass]="{a:isA, b:isB}">CSS 類綁定,[ngClass] 替換多個的例子</div>
修改 bind.component.ts
divClass: string; isSpcial: boolean = false; isA: boolean = false; isB: boolean = false; constructor() { setInterval(()=>{ this.divClass = "a b c"; this.isSpcial = true; this.isA = true this.isB = true }, 3000) }
圖示:
Style 屬性綁定
第一種情況
[style.color] = "isSpecial ? 'red' : 'green' "
控制 style樣式的 color, 如果 isSpecial 的值為true,那么color的屬性為 red。
第二種情況
[ngStyle]= "{'font-style' : this.canSave ? 'italic' : 'normal' }"
控制樣式 font-style 如果 this.canSave 的值為 trur 那么樣式就是 italic, 否則就是 normal
寫在最后
1.對于Style的屬性綁定和 class 的屬性綁定是一樣一樣的。
2.對于文章中所用的代碼是結合了 Angular2學習筆記之數據綁定上面的例子做的, 鏈接地址:http://chabaoo.cn/article/132122.htm
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。