Angular库组件中的参考层次结构

时间:2019-05-26 05:36:02

标签: angular angular-cli angular7 angular-components angular-library

我有一组在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查看组件,

任何建议将它们分开。

1 个答案:

答案 0 :(得分:0)

ButtonComponent中的声明中删除TableModule。因为单个组件不能同时由多个模块声明。