【问题标题】:Import component from sub-module in Angular从 Angular 中的子模块导入组件
【发布时间】:2018-01-10 16:31:37
【问题描述】:

所以我有我的 AppModule,模块 A,模块 B,这是 A 的子模块和 B 中声明的组件 X。

我的目标是让 X 在应用范围内可用(也可以在页面等组件中使用)。

据我了解,B 在声明和导出中需要 X,A 在导入和导出中需要 B,而 AppModule 在导入中需要 A。但是 X 分量是未知的。我错过了什么?

谢谢

【问题讨论】:

标签: angular


【解决方案1】:

我认为您正在寻找SharedModule

https://angular.io/guide/ngmodule-faq#sharedmodule

共享模块

使用您在应用程序中随处使用的组件、指令和管道创建一个SharedModule。这个NgModule 应该完全由声明组成,其中大部分是导出的。

SharedModule 可以使用您最广泛使用的 UI 控件重新导出其他小部件模块,例如 CommonModuleFormsModuleNgModules

...

import { NgModule } from '@angular/core';
import { XComponent } from './XComponent';

@NgModule({
  declarations: [XComponent],
  exports: [XComponent]
})
export class ModuleX { }

@NgModule({
...
  imports: [
    ModuleX
  ]
...
})
export class AppModule { ... }

【讨论】:

  • 你可以将我的模块称为“SharedModule”,但这并不能解决问题......
  • @fortuneNext 我不会让 A 成为 SharedModule。我将创建一个新的模块 X,它导出 ComponentX 并将其导入 AppModule。这应该可以解决您的问题。 “我的目​​标是让 X 在应用程序范围内可用(也在页面等组件中)。”
猜你喜欢
  • 2019-10-08
  • 2020-08-19
  • 2018-07-13
  • 2020-01-17
  • 1970-01-01
  • 2020-01-30
  • 2017-01-27
  • 1970-01-01
  • 2012-02-15
相关资源
最近更新 更多