Angular 4 如何在兄弟模块组件中使用其他模块组件

Posted

技术标签:

【中文标题】Angular 4 如何在兄弟模块组件中使用其他模块组件【英文标题】:Angular 4 How do I use another modules components in a sibling modules component 【发布时间】:2018-08-04 18:04:19 【问题描述】:

所以只是一点背景,我正在使用 Angular 4 和 AngularCli。以下是我的文件夹的结构:

app helper-components helper-components.module.ts views admin admin.module.ts views.module.js

所以基本上admin 目录有一些视图组件。 helper-components 目录有一堆组件,用于网站的结构部分,如导航。 admin 目录内是网站管理部分的实际视图。本质上,我想公开helper-components 目录中的组件,以便在admin 目录中的视图组件内部使用。

我读过文档说您需要将模块导入到要使用它的组件中。我尝试将HelperComponentsModule 导入ViewsModuleAdminModule。我也尝试将其导入AppModule

我继续从HelperComponentsModuleis not a known element 中收到我尝试使用的组件的错误。

【问题讨论】:

【参考方案1】:

您需要明确导出要在其他模块中使用的HelperComponentsModule 的组件。

看看Sharing Modules docs:

@NgModule(
 imports:      [ CommonModule ],
 declarations: [ CustomerComponent, NewItemDirective, OrdersPipe ],
 exports:      [ CustomerComponent, NewItemDirective, OrdersPipe,
                 CommonModule, FormsModule ]
)

【讨论】:

以上是关于Angular 4 如何在兄弟模块组件中使用其他模块组件的主要内容,如果未能解决你的问题,请参考以下文章

在Angular 4中单击时从相同的兄弟组件更改属性

Angular 2 中兄弟组件之间的数据共享

Angular 2/4/6 组件方法如何用于其他组件? [复制]

如何在 2 个组件之间进行通信 - 兄弟组件(Angular 1.5.8)

Angular 2 兄弟组件通信

angular 使用rxjs 监听同级兄弟组件数据变化