详解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 相关文章推荐
Javascript 作用域使用说明
Aug 13 Javascript
基于Jquery的标签智能验证实现代码
Dec 27 Javascript
删除javascript中注释语句的正则表达式
Jun 11 Javascript
在JavaScript中操作时间之getYear()方法的使用教程
Jun 11 Javascript
原生JS实现首页进度加载动画
Sep 14 Javascript
jQuery插件JWPlayer视频播放器用法实例分析
Jan 11 Javascript
集合Bootstrap自定义confirm提示效果
Sep 19 Javascript
JavaScript简单实现合并两个Json对象的方法示例
Oct 16 Javascript
利用原生js实现html5小游戏之打砖块(附源码)
Jan 03 Javascript
微信小程序实现自定义picker选择器弹窗内容
May 26 Javascript
Vue.js组件通信之自定义事件详解
Oct 19 Javascript
vue中使用vue-print.js实现多页打印
Mar 05 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下10件你也许并不了解的事情
2008/09/11 PHP
php 中文和编码判断代码
2010/05/16 PHP
php轻松实现中英文混排字符串截取
2014/05/28 PHP
php中的mongodb select常用操作代码示例
2014/09/06 PHP
ThinkPHP3.2.3数据库设置新特性
2015/03/05 PHP
任意位置显示html菜单
2007/02/01 Javascript
抽出www.templatemonster.com的鼠标悬停加载大图模板的代码
2007/07/11 Javascript
让iframe自适应高度(支持XHTML,支持FF)
2007/07/24 Javascript
jQuery常用操作方法及常用函数总结
2014/06/19 Javascript
js使用循环清空某个div中的input标签值
2014/09/29 Javascript
JavaScript中的变量作用域介绍
2014/12/31 Javascript
ExpressJS入门实例
2015/01/14 Javascript
基于Bootstrap实现图片轮播效果
2016/05/22 Javascript
微信小程序 轮播图swiper详解及实例(源码下载)
2017/01/11 Javascript
jQuery代码实现实时获取时间
2017/01/29 Javascript
bootstrap table方法之expandRow-collapseRow展开或关闭当前行数据
2020/08/09 Javascript
nodejs express配置自签名https服务器的方法
2018/05/22 NodeJs
微信小程序中显示倒计时代码实例
2019/05/09 Javascript
NodeJS多种创建WebSocket监听的方式(三种)
2020/06/04 NodeJs
[06:45]DOTA2-DPC中国联赛 正赛 Magma vs LBZS 选手采访
2021/03/11 DOTA
Python中优化NumPy包使用性能的教程
2015/04/23 Python
python中map()与zip()操作方法
2016/02/27 Python
在Python中分别打印列表中的每一个元素方法
2018/11/07 Python
Django1.11配合uni-app发起微信支付的实现
2019/10/12 Python
python语言中有算法吗
2020/06/16 Python
html5生成柱状图(条形图)效果的实例代码
2016/03/25 HTML / CSS
ASOS西班牙官网:英国在线时尚和美容零售商
2020/01/10 全球购物
乌克兰巴士票购买网站:inBus
2021/03/12 全球购物
介绍一下RMI的基本概念
2016/12/17 面试题
最经典的商业地产项目广告词
2014/03/13 职场文书
个人融资协议书
2014/10/02 职场文书
车辆委托书范本
2014/10/05 职场文书
2015社区精神文明建设工作总结
2015/04/21 职场文书
2015年小学教师培训工作总结
2015/07/21 职场文书
Nginx反向代理多个服务器的实现方法
2021/03/31 Servers
python识别围棋定位棋盘位置
2021/07/26 Python