angular4笔记系列之内置指令小结


Posted in Javascript onNovember 09, 2018

内置指令

内置属性型指令

属性型指令会监听和修改其它HTML元素或组件的行为、元素属性(Attribute)、DOM属性(Property)。

NgClass

形式:[ngClass]="statement"

通过绑定到NgClass,可以同时添加或移除多个类。

setCurrentClasses() {
 this.currentClasses = {
  'saveable': this.canSave,
  'modified': !this.isUnchanged,
  'special': this.isSpecial
 };
}

<div [ngClass]="currentClasses">This div</div>

NgStyle

形式:[ngStyle]="statement"

NgStyle绑定可以同时设置多个内联样式。

setCurrentStyles() {
 this.currentStyles = {
  'font-style': this.canSave   ? 'italic' : 'normal',
  'font-weight': !this.isUnchanged ? 'bold'  : 'normal',
  'font-size':  this.isSpecial  ? '24px'  : '12px'
 };
}

<div [ngStyle]="currentStyles">This div</div>

NgModel

形式:[(ngModel)]="statement"

使用[(ngModel)]双向绑定到表单元素。

<input [(ngModel)]="currentHero.name">

使用 ngModel 时需要 FormsModule

内置结构型指令

NgIf

形式:*ngIf="statement"

<app-hero-detail *ngIf="isActive"></app-hero-detail>

NgFor

形式:*ngFor="statement"

<div *ngFor="let hero of heroes">{{hero.name}}</div>

NgSwitch

形式:[ngSwitch]="statement"

<div [ngSwitch]="currentHero.emotion">
 <app-happy-hero *ngSwitchCase="'happy'" [hero]="currentHero"></app-happy-hero>
 <app-sad-hero *ngSwitchCase="'sad'" [hero]="currentHero"></app-sad-hero>
 <app-unknown-hero *ngSwitchDefault [hero]="currentHero"></app-unknown-hero>
</div>

NgSwitch实际上包括三个相互协作的指令:NgSwitch、NgSwitchCase 和 NgSwitchDefault

模板引用变量 ( #var )

模板引用变量通常用来引用模板中的某个DOM元素,它还可以引用Angular组件或指令或Web Component。

<input #phone placeholder="phone number">

<button (click)="callPhone(phone.value)">Call</button>

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

Javascript 相关文章推荐
js弹出div并显示遮罩层
Feb 12 Javascript
js实现简单的可切换选项卡效果
Apr 10 Javascript
javascript实现简单的进度条
Jul 02 Javascript
JQuery 在文档中查找指定name的元素并移除的实现方法
May 19 Javascript
jQuery简单实现tab选项卡切换效果
Jun 20 Javascript
Node.js配合node-http-proxy解决本地开发ajax跨域问题
Aug 31 Javascript
基于JS实现checkbox全选功能实例代码
Oct 31 Javascript
js图片上传的封装代码
Aug 01 Javascript
关于vue v-for 循环问题(一行显示四个,每一行的最右边那个计算属性)
Sep 04 Javascript
对 Vue-Router 进行单元测试的方法
Nov 05 Javascript
JS简单判断是否在微信浏览器打开的方法示例
Jan 08 Javascript
JS中箭头函数与this的写法和理解
Jan 14 Javascript
node版本管理工具n包使用教程详解
Nov 09 #Javascript
解决Vue在封装了Axios后手动刷新页面拦截器无效的问题
Nov 08 #Javascript
vue.js层叠轮播效果的实例代码
Nov 08 #Javascript
vue-cli 构建骨架屏的方法示例
Nov 08 #Javascript
浅谈在不使用ssr的情况下解决Vue单页面SEO问题(2)
Nov 08 #Javascript
详解在不使用ssr的情况下解决Vue单页面SEO问题
Nov 08 #Javascript
Vux+Axios拦截器增加loading的问题及实现方法
Nov 08 #Javascript
You might like
如何使用微信公众平台开发模式实现多客服
2016/01/06 PHP
javascript打印输出json实例
2013/11/11 Javascript
使用pjax实现无刷新更改页面url
2015/02/05 Javascript
js实现防止被iframe的方法
2015/07/03 Javascript
json与jsonp知识小结(推荐)
2016/08/16 Javascript
Javascrip实现文字跳动特效
2016/11/27 Javascript
js定时器实例分享
2016/12/20 Javascript
详解JS中遍历语法的比较
2017/04/07 Javascript
nodejs入门教程二:创建一个简单应用示例
2017/04/24 NodeJs
微信小程序movable view移动图片和双指缩放实例代码
2017/08/08 Javascript
解决VUEX兼容IE上的报错问题
2018/03/01 Javascript
Vue表单及表单绑定方法
2018/09/04 Javascript
详解webpack之图片引入-增强的file-loader:url-loader
2018/10/08 Javascript
使用vue开发移动端管理后台的注意事项
2019/03/07 Javascript
JS实现简易留言板(节点操作)
2020/03/16 Javascript
jquery实现进度条状态展示
2020/03/26 jQuery
Element Steps步骤条的使用方法
2020/07/26 Javascript
将Python的Django框架与认证系统整合的方法
2015/07/24 Python
python2.7 mayavi 安装图文教程(推荐)
2017/06/22 Python
基于Python中capitalize()与title()的区别详解
2017/12/09 Python
Python numpy大矩阵运算内存不足如何解决
2020/11/19 Python
利用css3-animation实现逐帧动画效果
2016/03/10 HTML / CSS
使用HTML5在网页中嵌入音频和视频播放的基本方法
2016/02/22 HTML / CSS
谈一谈HTML5本地存储技术
2016/03/02 HTML / CSS
详解html5页面 rem 布局适配方法
2018/01/12 HTML / CSS
小学生检讨书大全
2014/02/06 职场文书
开学典礼决心书
2014/03/11 职场文书
学生安全承诺书
2014/05/22 职场文书
学困生帮扶工作总结
2015/08/13 职场文书
立秋之描写立秋的作文(五年级)
2019/08/08 职场文书
CSS3 实现的图片悬停的切换按钮
2021/04/13 HTML / CSS
深入浅析React中diff算法
2021/05/19 Javascript
Node.js实现爬取网站图片的示例代码
2022/04/04 NodeJs
Pandas实现批量拆分与合并Excel的示例代码
2022/05/30 Python
Android中的Launch Mode详情
2022/06/05 Java/Android
Valheim服务器 Mod修改安装教程 【ValheimPlus】
2022/12/24 Servers