2017-02-17 48 views
1

在StackOverflow中有不少文章提供了比Angular 2文档更好的细节,介绍如何在另一个自定义组件中包含自定义组件。但是,即使我遵循这些指令(确保注入的组件位于模块定义的declarations块中,并且还确保注入的组件位于组件定义的directives块中),但它仍会引发错误:Angular 2:无法将组件包含到另一个

Unhandled Promise rejection: Template parse errors: 
'test' is not a known element: 
1. If 'test' is an Angular component, then verify that it is part of this module. 
2. If 'test' is a Web Component then add "CUSTOM_ELEMENTS_SCHEMA" to the '@NgModule.schemas' of this component to suppress this message. (" 
</footer> 

[ERROR ->]<test></test> 

您可以查看Github repo。我开始a branch我试图找出它。

我可以忘记什么?任何指导表示赞赏。

回答

0

它们在不同的模块中。 将它们放入一个模块并重建项目。

+0

我特别希望它们成为独立的模块,以便重新使用和分离问题。 – jansensan

0

在这种情况下,测试组件应该用作共享模块,因为您正尝试像使用功能模块一样使用它,因为这两个模块都是独立的.Atular无法找到该模块。

要么将​​这两个组件放在同一个模块中,要么将测试组件用作共享模块。

+0

是的,我想这确实是我试图构建的共享模块。但是,我无法弄清楚这种东西需要什么导入/注入/声明等。文档是全面的,而不是一次一个地解释一件事。在这种情况下,我会使用注入的模块在模块的imports块中放置TestModule,但仍然失败。 – jansensan

+0

您需要创建一个新类作为共享模块,然后在该类中使用导出标记列表将您想要用作共享资源的所有组件,然后使用功能模块导入中的共享模块 –

+0

我确实有'TestModule ',但是如果我把它放在'imports'块中并不重要,我仍然会出错。 – jansensan

相关问题