欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

详解Angular2学习笔记之Html属性绑定

程序员文章站 2022-10-30 22:33:04
简介 基本html属性 css 类绑定...

简介

基本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>

图示:

详解Angular2学习笔记之Html属性绑定

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)
}

图示:

详解Angular2学习笔记之Html属性绑定

第二种情况

[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)
}

图示:

详解Angular2学习笔记之Html属性绑定

第三种情况

[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)
}

图示:

详解Angular2学习笔记之Html属性绑定

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学习笔记之数据绑定上面的例子做的,链接地址:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。