Angular2将动态内容传递给组件

时间:2017-03-09 07:13:35

标签: angular angular2-template

我有一个ListComponent,它基本上在ngFor +一些功能的对象数组上循环。

我希望能够通过不同的项目'组件为ListComponent内容,如下所示:

<list-component>
    <item-component [SomeInput]="someInput">
        <some-content></some-content>
    </item-component>
</list-component>

在另一个地方:

<list-component>
     <different-item-component [SomeInput]="someInput">
         <some-content></some-content>
     </different-item-component>
</list-component>

然后在我的ListComponent

<ul>
    <li *ngFor="let item of items">
        <!-- ng-content can be different item components -->
        <ng-content [Item]="item" ></ng-content>
    </li>
</ul>

我知道ng-content是静态的,并且该项目不能作为输入传递。 (它只是为了说明想要的行为......)

我已尝试使用此answer

中的templateTemplateRef来实现此目的

但只有将template标记直接放在<list-component> 无法正常工作中,如果我将template放在item-component内,它才有效{1}}的模板并按上述方式使用。

我如何才能使其发挥作用或者有不同的方法来实现这一目标?

0 个答案:

没有答案