我有一个带有3个模块的角度2项目。 AppModule,共享模块和延迟加载的模块。我想要两个模块(延迟加载和App)导入共享模块,以便它们都可以使用共享模块提供的管道等。这可能吗?
我试过,但是我收到错误告诉我共享模块已经加载了。并且仅在AppModule中加载它,但延迟加载的模块无法访问提供的元素。
我是否误解了角度模块?
答案 0 :(得分:1)
是的,你可以使用共享NgModule来处理惰性模块和非延迟模块
应用/共享/ shared.module.ts 强>
import { NgModule } from '@angular/core';
import { MustSharedService } from './must-shared.service';
@NgModule({
providers: [MustSharedService]
})
export class SharedModule {}
应用/ app.module.ts 强>
import { SharedModule } from './shared/shared.module';
@NgModule({
imports: [
SharedModule,
...
],
})
export class AppModule {}
应用/懒惰/ lazy.module.ts 强>
import { SharedModule } from '../shared/shared.module';
@NgModule({
imports: [
SharedModule,
...
],
})
export class LazyModule {}
从那里开始的任何服务,例如,您在SharedModule中提供的服务都将在2 Module中提供。