我有一组在Angular CLI库中实现的组件, 组件的组织方式如下:
Project
|--Components
-----|lib
-------Text-box
-------Button
-------Select
-------Check-Box
-------Radio-Button
|Component.Module.ts //all components declare and export here
现在我要添加具有许多组件和模块的网格模块:
-------Grid
---------Columns
---------Directives
---------Modal
---------Filters
---------Table-Module
我在网格模块内部使用了简单组件,因此我在网格模块的on中添加了简单组件,但出现此错误:
未捕获的错误:类型ButtonComponent是2的声明的一部分 模块:ComponentsModule和TableModule!请考虑 将ButtonComponent移至要导入的更高模块 ComponentsModule和TableModule。您也可以创建一个新 NgModule导出并包含ButtonComponent,然后导入 在ComponentsModule和TableModule中使用NgModule。
我已经有一个包含所有组件的高级模块, 我必须创建几个这样的模块:
Base-Component.Module // contain text-box, button, label, ...
Grid-Module // contain grid module, and import/export base component
Component.Module // import Base-Component.Module & Grid-Module
我不喜欢它,因为它们粘在一起并且主模块通过Grid-module查看组件,
任何建议将它们分开。
答案 0 :(得分:0)
从ButtonComponent
中的声明中删除TableModule
。因为单个组件不能同时由多个模块声明。