angular2 - content projection-
angular2中的内容映射:
App.component:
<my-day>
<my-lucky> </my-lucky>
</my-day>
MyDay.component:
selector:'my-day'
template`<h1>my day </h1>
<ng-content></ng-content>
`
MyLucky.component:
selector:'my-lucky',
template:'<p>One fine day</p> '
MyLucky中的内容就会映射到MyDayComponent的'ng-content'标签内;
@ContentChildren(MyLuckyComponent):;MYDay通过它访问;
------------------------------------------
ng-content
ng-content拥有一个select属性,允许选择性地加载组件。但必须保证,所供选择的组件都放在<my-day></my-day>内部。
:
<ng-content select='[one]'></ng-content> //按属性选择 ;;可以提供属性值:select='[one=*]',按属性值来加载。
选择:<my-lucky one> </my-lucky> 选择具有one属性的;
<ng-content select='my-lucky'></ng-content>//按标签选择
选择:<my-lucky></my-lucky>
<ng-content select='.class1'></ng-content>//按CSS选择;
选择:<div class='class1'></div>
在设置了select属性后,可允许一个组件内拥有多个ng-content,各自按须加载。
------------------------------------------------------
可惜ng-content select无法进行动态加载。
<ng-content select='{{selected}}'> 不行。
<my-lucky [one]='visibility.lucky'> 不行。
<my-lucky one='{{visibility.lucky}}'>不行。
好吧,我是这样的:
<my-day>
<my-lucky *ngIf='visibility.lucky'></my-lucky>
<my-wonderfull *ngIf='visibility.wonderfull'></my-wonderfull>
</my-day> <ng-content> </ng-content> //不写任何属性。
refer:https://scotch.io/tutorials/angular-2-transclusion-using-ng-content
我的Github例子:https://github.com/zhantewei2/Ionic2-example-notes/tree/master/pages/testSegment
angular2 - content projection-的更多相关文章
- [Angular] Learn Angular Multi-Slot Content Projection
Now for au-modal component, we pass in tow component though contenct projection: <au-modal class= ...
- [Angular] Configurable Angular Components - Content Projection and Input Templates
We are going to have a modal component: <au-modal > </au-modal> And we can pass default ...
- [Angular 2] Share Template Content In Another Template With Content Projection <ng-content>
Angular 1 provided a mechanism to place content from your template inside of another template called ...
- [Angular] Content Projection with ng-content
For example there is tow form compoennts on the page, and what we want to do is reusing the form com ...
- Angular2.0的项目架构
Angular2.0的项目架构 一.项目服务端app a) Controller控制器 b) Router路由 c) Service服务 d) Public公共样式及脚本和图片等静态资源 e) Vie ...
- C#版的mongodb最新的官方驱动2.4.0版本
已经升级了mongodb至最新的3.4的版本,我想想也该把驱动升到最新的了,我用的驱动还是1.7的版本呢,之前几次想升级,都是因为升级驱动需要改动的代码太大了,升级的成本很高,所以懒得动,就这么的用了 ...
- Angular:利用内容投射向组件输入ngForOf模板
现在,我们写一个组件puppiesListCmp,用于显示小狗狗的列表: //puppies-list.component.ts @Component({ selector: 'puppies-lis ...
- angular5 @viewChild @ContentChild ElementRef renderer2
@viewChild 作用一:选择组件内节点 <!--视图 --> <div #mydiv><input></div> // 选择 @ViewChild ...
- Angular4学习笔记(八)- ng-content
内容投影 ng-content ng-content是一个占位符,有些类似于router-outlet. 以前举の例子,父组件包含子组件都是直接指明子组件的selector,比如子组件的selecto ...
随机推荐
- 【mysql】关于循环插入数据 存储设计
要求插入的数据有一定的规律 新建实例列表 CREATE TABLE users ( userId ) NOT NULL, userName ) NOT NULL, Serves ) NOT NULL, ...
- jquery 层根据矩形路径移动和闪耀(原创)
<!DOCTYPE html><html><head> <meta charset="UTF-8"> <title>De ...
- 不安装HALCON下安装运行版U盘加密狗驱动
参考halcon安装指导书 Installation Guide Depending on your operating system, you can install, configure, and ...
- json处理总结(前端js和后端java)
前端(js): json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键,下面将介绍两者之间的相互转换. json字符串:var st ...
- c# unity PlayerPrefs 游戏存档,直白点就是讲游戏数据本地保存下来
在游戏会话中储存和访问游戏存档.这个是持久化数据储存,比如保存游戏记录. 我的理解是通过某个特殊的标签来保存在本地,而且该标签为key的意思,初始值不用赋值. 在游戏开发中较为实用. 暂时用到了 Se ...
- java发送http的get、post请求[转]
原文链接:http://www.cnblogs.com/zhuawang/archive/2012/12/08/2809380.html package wzh.Http; import java.i ...
- 用JAVA写查询一个字符串中是否包含另外一个字符串以及出现的次数
package JAVA; import java.awt.List;import java.util.ArrayList;/** * * @author 梁小鱼 * */public class ...
- curl开源库编译
环境:Win7+VS2013 1.下载curl的zip包并解压,本文下载的是curl-7.39.0.zip,下载地址:http://curl.haxx.se/download.html 2.打开vs2 ...
- 使用 IDEA + Maven + Git 快速开发 JAVA或者Web 应用(转)
0-0 前言 最近和同事做爬虫,其中我主要遇到的问题是:同事在github上放了爬虫demo让我自己去下载,然后自己能搭好环境让整个项目跑起来去抓51job找工作数据.git上克隆一个项目下来,项目是 ...
- The first day to learn Englisht
IF you want to go fast,to alone. IF you want to go far,go with others.