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


Posted in Javascript onJanuary 03, 2018

简介

基本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学习笔记之数据绑定上面的例子做的,链接地址:https://3water.com/article/132066.htm

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

Javascript 相关文章推荐
js判断浏览器类型的方法
Aug 07 Javascript
使用jquery hover事件实现表格的隔行换色功能示例
Sep 03 Javascript
jquery easyui 对于开始时间小于结束时间的判断示例
Mar 22 Javascript
Javascript之String对象详解
Jun 08 Javascript
JS简单判断滚动条的滚动方向实现方法
Apr 28 Javascript
vue.js+Echarts开发图表放大缩小功能实例
Jun 09 Javascript
BootStrap 页签切换失效的解决方法
Aug 17 Javascript
jQuery实现标签子元素的添加和赋值方法
Feb 24 jQuery
详解VueJs中的V-bind指令
May 03 Javascript
Vue CLI 3.x 自动部署项目至服务器的方法
Apr 02 Javascript
js canvas实现5张图片合成一张图片
Jul 15 Javascript
Vue+Koa2+mongoose写一个像素绘板的实现方法
Sep 10 Javascript
Angular2学习笔记之数据绑定的示例代码
Jan 03 #Javascript
vue、react等单页面项目应该这样子部署到服务器
Jan 03 #Javascript
AngularJS实现的2048小游戏功能【附源码下载】
Jan 03 #Javascript
浅谈node模块与npm包管理工具
Jan 03 #Javascript
JavaScript基于面向对象实现的猜拳游戏
Jan 03 #Javascript
JS实现的简单拖拽购物车功能示例【附源码下载】
Jan 03 #Javascript
基于js 各种排序方法和sort方法的区别(详解)
Jan 03 #Javascript
You might like
在php MYSQL中插入当前时间
2008/04/06 PHP
PHP通过iconv将字符串从GBK转换为UTF8字符集
2011/07/18 PHP
新浪微博API开发简介之用户授权(PHP基础篇)
2011/09/25 PHP
PHP从FLV文件获取视频预览图的方法
2015/03/12 PHP
PHP学习笔记(一):基本语法之标记、空白、和注释
2015/04/17 PHP
手把手教你自己写一个js表单验证框架的方法
2010/09/14 Javascript
javascript实现跨域的方法汇总
2015/06/25 Javascript
jQuery网页定位导航特效实现方法
2016/12/19 Javascript
jQuery Validate验证表单时多个name相同的元素只验证第一个的解决方法
2016/12/24 Javascript
jquery replace方法去空格
2017/05/08 jQuery
详解vue文件中使用echarts.js的两种方式
2018/10/18 Javascript
微信小程序实现留言板(Storage)
2018/11/02 Javascript
JavaScript 点击触发复制功能实例详解
2018/11/02 Javascript
微信小程序新手教程之页面打开数量限制
2019/03/03 Javascript
vue限制输入框只能输入8位整数和2位小数的代码
2019/11/06 Javascript
vue+axios 拦截器实现统一token的案例
2020/09/11 Javascript
在vue中使用cookie记住用户上次选择的实例(本次例子中为下拉框)
2020/09/11 Javascript
解决vue打包报错Unexpected token: punc的问题
2020/10/24 Javascript
利用JavaScript为句子加标题的3种方法示例
2021/01/05 Javascript
详解template标签用法(含vue中的用法总结)
2021/01/12 Vue.js
[52:03]DOTA2-DPC中国联赛 正赛 Ehome vs iG BO3 第三场 1月31日
2021/03/11 DOTA
在Python中使用CasperJS获取JS渲染生成的HTML内容的教程
2015/04/09 Python
在Python中使用SQLite的简单教程
2015/04/29 Python
浅谈python字典多键值及重复键值的使用
2016/11/04 Python
python用户管理系统的实例讲解
2017/12/23 Python
Python反爬虫技术之防止IP地址被封杀的讲解
2019/01/09 Python
使用Python调取任意数字资产钱包余额功能
2019/08/15 Python
CSS Grid布局教程之网格单元格布局
2014/12/30 HTML / CSS
英国著名的茶叶品牌:Whittard of Chelsea
2016/09/22 全球购物
英国礼品和生活方式品牌:Treat Republic
2020/11/21 全球购物
网络公司美工设计工作个人的自我评价
2013/11/03 职场文书
优秀老师事迹材料
2014/02/05 职场文书
公司运动会策划方案
2014/05/25 职场文书
工会趣味活动方案
2014/08/18 职场文书
导游词之南京汤山温泉
2019/11/26 职场文书
mysql数据库入门第一步之创建表
2021/05/14 MySQL