Angular4学习教程之HTML属性绑定的方法


Posted in Javascript onJanuary 04, 2018

前言

本文主要给大家介绍了关于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>

图示:

Angular4学习教程之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)
}

图示:

Angular4学习教程之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)
}

图示:

Angular4学习教程之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)
}

图示:

Angular4学习教程之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/132122.htm

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
filemanage功能中用到的lib.js
Apr 08 Javascript
使用jQueryMobile实现滑动翻页效果的方法
Feb 04 Javascript
js实现简易的单数字随机抽奖(0-9)
Mar 19 Javascript
Js得到radiobuttonlist选中值的两种方法(推荐)
Aug 25 Javascript
对比分析Django的Q查询及AngularJS的Datatables分页插件
Feb 07 Javascript
VUE axios上传图片到七牛的实例代码
Jul 28 Javascript
将jquery.qqFace.js表情转换成微信的字符码
Dec 01 jQuery
详解vue.js根据不同环境(正式、测试)打包到不同目录
Jul 13 Javascript
vue项目实现图片上传功能
Dec 23 Javascript
微信h5静默和非静默授权获取用户openId的方法和步骤
Jun 08 Javascript
vue.js实现h5机器人聊天(测试版)
Jul 16 Javascript
vue+vuex+axios从后台获取数据存入vuex,组件之间共享数据操作
Jul 31 Javascript
JS基于for语句编写的九九乘法表示例
Jan 04 #Javascript
JS计算输出100元钱买100只鸡问题的解决方法
Jan 04 #Javascript
Angular4学习教程之DOM属性绑定详解
Jan 04 #Javascript
JS实现简易换图时钟功能分析
Jan 04 #Javascript
Angular4学习之Angular CLI的安装与使用教程
Jan 04 #Javascript
利用Vue2.x开发实现JSON树的方法
Jan 04 #Javascript
vue-cli配置文件——config篇
Jan 04 #Javascript
You might like
《PHP编程最快明白》第二讲 数字、浮点、布尔型、字符串和数组
2010/11/01 PHP
php中error与exception的区别及应用
2014/07/28 PHP
PHP实现的浏览器检查类
2016/04/11 PHP
PHP中使用jQuery+Ajax实现分页查询多功能操作(示例讲解)
2017/09/17 PHP
PHP的PDO连接讲解
2019/01/24 PHP
PDO::exec讲解
2019/01/28 PHP
JS小功能(列表页面隔行变色)简单实现
2013/11/28 Javascript
jquery实现点击消失的代码
2014/03/03 Javascript
8个实用的jQuery技巧
2014/03/04 Javascript
浅谈javascript中this在事件中的应用
2015/02/15 Javascript
JavaScript中使用Math.PI圆周率属性的方法
2015/06/14 Javascript
动态加载css方法实现和深入解析
2017/01/18 Javascript
基于HTML5+JS实现本地图片裁剪并上传功能
2017/03/24 Javascript
解决vue router使用 history 模式刷新后404问题
2017/07/19 Javascript
浅谈Vue Element中Select下拉框选取值的问题
2018/03/01 Javascript
js运算符的一些特殊用法
2018/07/29 Javascript
javacript replace 正则取字符串中的值并替换【推荐】
2018/09/13 Javascript
JS利用prototype给类添加方法操作详解
2019/06/21 Javascript
JS中FormData类实现文件上传
2020/03/27 Javascript
[05:42]DOTA2英雄梦之声_第10期_蝙蝠骑士
2014/06/21 DOTA
[43:18]NB vs Infamous 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.22
2019/09/05 DOTA
python 自动提交和抓取网页
2009/07/13 Python
Python库urllib与urllib2主要区别分析
2014/07/13 Python
python统计文本文件内单词数量的方法
2015/05/30 Python
Python编程之gui程序实现简单文件浏览器代码
2017/12/08 Python
Python3.5局部变量与全局变量作用域实例分析
2019/04/30 Python
PyQt4实时显示文本内容GUI的示例
2019/06/14 Python
H5页面适配iPhoneX(就是那么简单)
2019/12/02 HTML / CSS
巧克力领导品牌瑞士莲美国官网:Lindt Chocolate美国
2016/08/25 全球购物
美国豪华的多品牌精品店:The Webster
2019/07/31 全球购物
枚举与#define宏的区别
2014/04/30 面试题
清明节演讲稿
2014/05/27 职场文书
2014年全国爱牙日宣传活动方案
2014/09/21 职场文书
三八红旗手事迹材料
2014/12/26 职场文书
整改通知书格式
2015/04/22 职场文书
python中urllib包的网络请求教程
2022/04/19 Python