2016-12-06 142 views
2

我有一個組件'A',它被添加到模塊M1和導出這是懶惰地加載, 現在我有另一個模塊M2有組件'B 「這是使用A(選擇)角度2:如何導出延遲加載模塊的組件

所以當M1是懶加載我得到錯誤的

組分A是不是任何NgModule

+0

是的,這就是你會得到。如果您需要共享通用功能,則應爲其創建服務並將該服務添加到主模塊,所有延遲加載的模塊都可以使用它。 –

回答

1

你應該做的是創造另一個模塊的一部分,您可以撥打SharedModule。從SharedModule導出組件A。然後導入SharedModule到兩個M1M2

+0

是的,但所有共享都將被加載,即不是懶惰。有其他選擇嗎? – sudhir

+0

我不相信。但我認爲你試圖達到的是不同的。你想在M2中使用組件A,我相信它不是延遲加載的。所以你需要組件A,即沒有延遲加載。這是構建SharedModule的目的。 –

+0

其實M2也是lazilty加載。 – sudhir

0

添加成分「A」在M2模塊的聲明

@NgModule({ 
    imports:  [ 
    SharedModule 
    ], 
    declarations: [ componentB, componentA ], 
    exports: [ componentB ] 
}) 
export class moduleM2 { } 
+0

Thanks.You不能聲明一個組件在兩個不同的模塊 – sudhir

+0

這是在共享模塊 – anshuVersatile