详解Angular2学习笔记之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学习笔记之数据绑定上面的例子做的,链接地址:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。