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 相关文章推荐
JavaScript开发规范要求(规范化代码)
Aug 16 Javascript
JavaScript通过prototype给对象定义属性用法实例
Mar 23 Javascript
javascript实现简单的html5视频播放器
May 06 Javascript
jQuery切换所有复选框选中状态的方法
Jul 02 Javascript
实用又漂亮的BootstrapValidator表单验证插件
May 30 Javascript
JS中BOM相关知识点总结(必看篇)
Nov 22 Javascript
轻松学习Javascript闭包
Mar 01 Javascript
jQuery Validate 相关参数及常用的自定义验证规则
Mar 06 Javascript
浅析Vue实例以及生命周期
Aug 14 Javascript
微信小程序点击滚动到指定位置的实现
May 22 Javascript
vuejs实现下拉框菜单选择
Oct 23 Javascript
详解Js模块化的作用原理和方案
Apr 29 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
粗略计算在线时间,bug:ip相同
2006/12/09 PHP
让php处理图片变得简单 基于gb库的图片处理类附实例代码下载
2011/05/17 PHP
简单介绍win7下搭建apache+php+mysql开发环境
2015/08/06 PHP
php使用redis的有序集合zset实现延迟队列应用示例
2020/02/20 PHP
表单的一些基本用法与技巧
2006/07/15 Javascript
javascript 页面只自动刷新一次
2009/07/10 Javascript
js控制input输入字符解析
2013/12/27 Javascript
javascript实例分享---具有立体效果的图片特效
2014/06/08 Javascript
JS通过ajax动态读取xml文件内容的方法
2015/03/24 Javascript
JS获得图片alt信息的方法
2015/04/01 Javascript
js图片轮播效果实现代码
2020/04/18 Javascript
javascript动态添加checkbox复选框的方法
2015/12/23 Javascript
jQuery序列化表单成对象的简单实现
2016/11/29 Javascript
纯html+css+javascript实现楼层跳跃式的页面布局(实例代码)
2017/10/25 Javascript
vue集成百度UEditor富文本编辑器使用教程
2018/09/21 Javascript
vue通过过滤器实现数据格式化
2020/07/20 Javascript
详解Python中heapq模块的用法
2016/06/28 Python
opencv实现图片模糊和锐化操作
2018/11/19 Python
python 堆和优先队列的使用详解
2019/03/05 Python
使用Python实现画一个中国地图
2019/11/23 Python
关于keras中keras.layers.merge的用法说明
2020/05/23 Python
python批量生成身份证号到Excel的两种方法实例
2021/01/14 Python
CSS3 制作绽放的莲花采用效果叠加实现
2013/01/31 HTML / CSS
哈利波特商店:Harry Potter Shop
2018/11/30 全球购物
美国最好的钓鱼、狩猎和划船装备商店:Bass Pro Shops
2018/12/02 全球购物
工商管理专业实习大学生自我鉴定
2013/09/19 职场文书
副厂长岗位职责
2014/02/02 职场文书
合作意向书范本
2014/03/31 职场文书
二年级学生评语大全
2014/04/23 职场文书
先进学校事迹材料
2014/12/30 职场文书
售后服务承诺函格式
2015/01/21 职场文书
运动会观后感
2015/06/09 职场文书
女儿满月酒致辞
2015/07/29 职场文书
2016优秀班主任个人先进事迹材料
2016/02/26 职场文书
Python代码风格与编程习惯重要吗?
2021/06/03 Python
Spring Boot优化后启动速度快到飞起技巧示例
2022/07/23 Java/Android