0

我有一个延迟加载的模块,名为account. 里面有account一个RegisterComponent和一个RegisterDialogComponent

我想显示一个来自AccountModule.RegisterDialogComponentin的对话框AppModule.AppComponent。用于测试目的。

RegisterDialogComponent被声明并在 entrycomponents 中,在AccountModule.

如果我添加AccountModuletoAppModule的导入它可以工作,但是这AccountModule不再是延迟加载。

我的问题是,如何打开一个包含延迟加载模块内容的对话框?这甚至可能吗?

4

1 回答 1

0

这是不可能的,至少我不知道怎么做。

解决方法是将有关对话框和组件的所有内容都放在它们自己的模块中,也就是相同的范围。但是,如果此帐户模块是延迟加载的,这仍然不允许从外部模块打开对话框。但它将允许从延迟加载模块中打开延迟加载模块中的对话框。从长远来看,帐户功能是应用程序的核心部分,并且我希望它必须包含在最初加载的大量 js 文件中。

请注意,即使延迟加载,您也必须将本地添加DialogService到提供程序,即使它是@Injectable({providedIn: 'root'}). 当然 DialogComponent 需要在entryComponents.

于 2019-12-14T14:15:51.290 回答