经过长时间的搜索,我仍然迷失了。
我有一个AppModule和一个ModalModule。 AppModule正在导入ModalModule
AppModule使用此装饰器属性声明LoaderComponent:
selector: 'my-loader', template: '<div>...</div><ng-content></ng-content>'
ModalModule声明ModalComponent。
在ModalComponent模板中我想使用LoaderComponent:
<my-loader><h3>Loading...</h3><p>Just information text.</p></my-loader>
这不起作用!
'my-loader' is not a known element:
1. If 'my-loader' is an Angular component, then verify that it is part of this module.
2. If 'my-loader' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message.
如果我将 CUSTOM_ELEMENTS_SCHEMA 添加到ModalModule,它只会忽略该元素,而DOM看起来像这样:
<my-loader>
<h3>Loading...</h3>
<p>Just information text.</p>
</my-loader>
但我希望它通过棱角呈现,看起来像这样:
<my-loader>
<div>...</div> <!-- should be coming from LoaderComponent template -->
<h3>Loading...</h3>
<p>Just information text.</p>
</my-loader>
有人有想法吗?
答案 0 :(得分:0)
清理和使用SharedComponent有帮助!
Angular2 How to clean up the AppModule
我必须做的唯一区别是将CommonModule和FormsModule添加到SharedModule的导入中!