所以我有一个带< template>的组件
<some-component [data]="someArray"> <template>foo<template> </some-component>
并且它正在使用它来获取模板
@ContentChild(TemplateRef) public tmpl: TemplateRef<any>;
然后在它的模板中使用它
<div *ngFor="let item of someArrayFromDataInput"> <template [ngTemplateOutlet]="tmpl"></template> </div>
现在我希望能够从原始模板中的项目打印一些数据,基本上能够做到这一点
<some-component [data]="someArray"> <template>foo {{ item }}<template> </some-component>
有可能吗?
更新以匹配Angular 5 api
根据 https://stackoverflow.com/a/37654077/301596,ngOutletContext被重命名为ngTemplateOutletContext
根据 https://stackoverflow.com/a/37654077/301596,ngOutletContext被重命名为ngTemplateOutletContext
一旦它落到https://github.com/angular/angular/pull/9042,它就会像这样工作
<div *ngFor="let item of someArrayFromDataInput"> <template [ngTemplateOutletContext]="{ item: item }" [ngTemplateOutlet]="tmpl"></template> </div>
<some-component [data]="someArray"> <template let-item="item">foo {{ item }}<template> </some-component>
//编辑:登陆