从延迟加载的模块中打开模态

时间:2016-09-22 03:37:49

标签: angular ng-bootstrap

我有一个基于angular2-webpack-starter种子项目的项目,我正在尝试集成ng-bootstrap - 特别是模态。

我有一个SharedModule,我导入NgbModule并重新导出它。我的应用程序中的每个其他模块都导入SharedModule。

我已根据文档在app.component.html中配置了ngbModalContainer。

我现在有一个需要打开模态的延迟加载模块。当我尝试在NgbModal服务上调用open(...)方法时,我收到一条错误,指出它无法找到容器:

  

缺少模态容器,添加   到你的一个应用程序模板。

我认为这是因为延迟加载的模块正在导入SharedModule,并且正在接收NgbModal服务的单独实例而不是根应用程序模块。

我的问题是 - 配置这个的正确方法是什么,所以NgbModal(以及其余的ng-bootstrap服务/组件)可以在应用程序范围内使用,包括延迟加载的模块。

谢谢!

1 个答案:

答案 0 :(得分:0)

在根模块(app.module.ts)中导入NgbModule.forRoot() 然后延迟加载模块导入NgbModule