Angular中的ng-template及angular 使用ngTemplateOutlet 指令的方法


Posted in Javascript onAugust 08, 2018

ng-template 是用来定义模板的,当使用ng-template定义好一个模板之后,可以用ng-container和templateOutlet指令来进行使用。

<ng-template #loading>
 <button (click)="login()">login</button>
 <button (click)="sigup()">sigup</button>
</ng-template>
<ng-container *ngTemplateOutlet="loading">
</ng-container>

ng-template在编写高定制性的组件时非常有用。可以把需要定制的内容作为模板传到组件中。

下面看下angular 使用 ngTemplateOutlet 指令

ngTemplateOutlet 的作用

该指令用于基于已有的 TemplateRef 对象,插入对应的内嵌视图。在应用 NgTemplateOutlet 指令时,我们可以通过 [ngTemplateOutletContext] 属性来设置 EmbeddedViewRef 的上下文对象。绑定的上下文应该是一个对象,此外可通过 let语法来声明绑定上下文对象属性名。

 ngTemplateOutlet 的使用

import { Component } from '@angular/core';
@Component({
 selector: 'app-root',
 template: `
  <ng-template #stpl>
   Hello, Semlinker!
  </ng-template>
  <ng-template #atpl>
   Hello, Angular!
  </ng-template>
  <div [ngTemplateOutlet]="atpl"></div>
  <div [ngTemplateOutlet]="stpl"></div>
 `,
})
export class AppComponent { }

 ngOutletContext 的使用

import { Component } from '@angular/core'; 
@Component({
 selector: 'app-root',
 template: `
  <ng-template #stpl let-message="message">
   <p>{{message}}</p>
  </ng-template>
  <ng-template #atpl let-msg="message">
   <p>{{msg}}</p>
  </ng-template>
  <ng-template #otpl let-msg>
   <p>{{msg}}</p>
  </ng-template>
  <div [ngTemplateOutlet]="atpl"
   [ngOutletContext]="context">
  </div>
  <div [ngTemplateOutlet]="stpl"
   [ngOutletContext]="context">
  </div>
  <div [ngTemplateOutlet]="otpl"
   [ngOutletContext]="context"> </div>
 `,
}) 
export class AppComponent {
 context = { message: 'Hello ngOutletContext!', 
  $implicit: 'Hello, Semlinker!' };
}

总结

以上所述是小编给大家介绍的Angular中的ng-template及angular 使用ngTemplateOutlet 指令的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
(JS实现)MapBar中坐标的加密和解密的脚本
May 16 Javascript
?牟┛途W扣了一??效果出?? target=
May 27 Javascript
代码精简的可以实现元素圆角的js函数
Jul 21 Javascript
js如何判断用户是否是用微信浏览器
Jun 05 Javascript
jQuery实现伪分页的方法分享
Feb 17 Javascript
JavaScript中匿名函数的递归调用
Jan 22 Javascript
详解JS中遍历语法的比较
Apr 07 Javascript
Vue组件模板形式实现对象数组数据循环为树形结构(实例代码)
Jul 31 Javascript
JS轮播图实现简单代码
Feb 19 Javascript
使用vue-router beforEach实现判断用户登录跳转路由筛选功能
Jun 25 Javascript
Ant Design Pro 下实现文件下载的实现代码
Dec 03 Javascript
Vue深入理解插槽slot的使用
Aug 05 Vue.js
深入理解Promise.all
Aug 08 #Javascript
vue js秒转天数小时分钟秒的实例代码
Aug 08 #Javascript
vue devtools的安装与使用教程
Aug 08 #Javascript
jQuery AJAX 方法success()后台传来的4种数据详解
Aug 08 #jQuery
通过jquery的ajax请求本地的json文件方法
Aug 08 #jQuery
Vue 开发音乐播放器之歌手页右侧快速入口功能
Aug 08 #Javascript
jQuery中ajax请求后台返回json数据并渲染HTML的方法
Aug 08 #jQuery
You might like
php实现中文转数字
2016/02/18 PHP
Win10 下安装配置IIS + MySQL + nginx + php7.1.7
2017/08/04 PHP
thinkPHP实现基于ajax的评论回复功能
2018/06/22 PHP
JQuery index()方法使用代码
2010/06/02 Javascript
使用javascript过滤html的字符串(注释标记法)
2013/07/08 Javascript
js 设置缓存及获取设置的缓存
2014/05/08 Javascript
基于JavaScript实现仿京东图片轮播效果
2015/11/06 Javascript
JavaScript模块化开发之SeaJS
2015/12/13 Javascript
详解AngularJS Filter(过滤器)用法
2015/12/28 Javascript
JavaScript实现斗地主游戏的思路
2016/02/29 Javascript
浅析AngularJS中的指令
2016/03/20 Javascript
判断JS对象是否拥有某属性的方法推荐
2016/05/12 Javascript
js 判断各种数据类型的简单方法(推荐)
2016/08/29 Javascript
bootstrap-table组合表头的实现方法
2017/09/07 Javascript
JS函数节流和函数防抖问题分析
2017/12/18 Javascript
详解vue几种主动刷新的方法总结
2019/02/19 Javascript
Vue中图片Src使用变量的方法
2019/10/30 Javascript
BootStrap前端框架使用方法详解
2020/02/26 Javascript
autojs 蚂蚁森林能量自动拾取即给指定好友浇水的实现方法
2020/05/03 Javascript
微信小程序文章列表功能完整实例
2020/06/03 Javascript
vue 获取url里参数的两种方法小结
2020/11/12 Javascript
Python实现多并发访问网站功能示例
2017/06/19 Python
Python编程给numpy矩阵添加一列方法示例
2017/12/04 Python
利用python将xml文件解析成html文件的实现方法
2017/12/22 Python
Python + selenium + requests实现12306全自动抢票及验证码破解加自动点击功能
2018/11/23 Python
Python 移动光标位置的方法
2019/01/20 Python
Python初学者常见错误详解
2019/07/02 Python
Cython编译python为so 代码加密示例
2019/12/23 Python
详解HTML5中的picture元素响应式处理图片
2018/01/03 HTML / CSS
Bitiba意大利:在线宠物商店
2020/10/31 全球购物
红旗团支部事迹材料
2014/01/27 职场文书
贷款委托书怎么写
2014/08/02 职场文书
处级领导干部四风问题自我剖析材料
2014/09/29 职场文书
2014年会计人员工作总结
2014/12/10 职场文书
Pygame Draw绘图函数的具体使用
2021/11/17 Python
python 使用pandas读取csv文件的方法
2022/12/24 Python