2016-09-22 64 views
1

我有一個基於angular2-webpack-starter種子項目的項目,我試圖整合ng-bootstrap - 特別是模態。從懶惰加載模塊打開模式

我有一個SharedModule,我導入NgbModule和再出口了。我的應用程序中的每個其他模塊導入SharedModule。

我在app.component.html配置ngbModalContainer按照該文檔。

我現在有一個懶加載模塊,需要打開一個模式。當我嘗試和呼籲NgbModal服務我得到一個錯誤,指出它無法找到容器打開(...)方法:

缺少模式容器中,加入 到您的應用程序模板之一。

我認爲這是因爲懶加載模塊導入SharedModule並正在接收NgbModal服務的單獨實例比根應用程序模塊。

我的問題是 - 什麼是配置這個如此NgbModal(和NG-引導服務/組件的其餘部分)的正確方法是可用的應用廣泛,包括延遲加載的模塊。

謝謝!

+2

我已經打開https://github.com/ng-bootstrap/ng-bootstrap/問題/ 784,所以我們可以調查。 –

+0

如果您導入'NgbModule.forRoot()',會發生什麼? –

回答

0

在根模塊(app.module.ts)進口NgbModule.forRoot() 然後延遲加載模塊的進口NgbModule

+0

我會將此標記爲正確,但在此問題出現時,沒有forRoot方法可用。我實際上是通過添加它:) :) –

+0

您能說清楚「lazy load module import NgbModule」是什麼意思嗎?我如何懶加載導入(而不是路由?) – Rodney