Angular 2在第三方指令

时间:2016-06-03 15:53:08

标签: angular angular2-directives

我正在使用ng2-bootsrap's accordion directive

使用以下语法对普通html工作正常:

<accordion>
    <accordion-group heading="Heading 1">
        <div>Quick Search...</div>
    </accordion-group>
</accordion>

我想从我的一个组件中插入一个选择器,如下所示:

<accordion>
    <accordion-group heading="Heading 1">
        <quick-search></quick-search>
    </accordion-group>
</accordion>

当我添加我的组件时,解析器只是删除了选择器,并没有在其位置显示任何内容。如果accordion是我创建的指令,我通常会将我的组件(QuickSearchComponent)添加到指令列表中,如下所示:

@Component({
   ...
   directives: [QuickSearchComponent]
   ...
})

但是这是第三方指令。如何使指令识别它或添加到@ Component.directives注释?

1 个答案:

答案 0 :(得分:1)

directives: [QuickSearchComponent]
包含

的组件需要

<accordion>
    <accordion-group heading="Heading 1">
        <quick-search></quick-search>
    </accordion-group>
</accordion>

并且accordionaccordion-group组件中没有必要。

accordion-component中需要的是<ng-content>标记,其中<quck-search>被转换为。

如果它与<div>Quick Search...</div>一起使用,那么它也可以与<quick-search></quick-search>一起使用。

问题是由其他原因造成的。