2017-06-01 71 views
2

以我的角度(v.4.1.1)應用角2模塊中,我使用拖動和放下功能。基本上,標籤之間的所有內容都可以通過拖放進行移動。負載僅當條件滿足

動畫和預覽的項目工作,在新的瀏覽器,如Chrome和優勢,但在Internet Explorer很好,我獲得海量尖峯這就是爲什麼我提供降低動畫和它的預覽功能。 我已經實現了兩個版本的拖動NgModule,它們包含具有相同接口但具有不同實現的組件和服務。然而,我不知道一個聰明的方式來有條件地基於我的應用程序正在運行的瀏覽器導入它們。

我已經創建了一個方法isInternetExplorer(),我可以在模塊裝飾器中的'imports'數組中使用它。此解決方案僅適用於常規打字稿編輯,不適用於AOT編輯。有什麼方法可以讓我的解決方案在AOT環境中運行?

下面是一個簡短摘錄向你展示我的意思:

@NgModule({ 
    imports: [ 
     isInternetExplorer() ? DragAndMockModule.forRoot() : DragModule.forRoot(), 
     ... 
    ], 
    ... 
}) 

感謝您的幫助。

回答

0

我想你在找什麼是加載在一個慵懶的方式模塊。假設您的模塊是獨立的,您可以利用路由器防護裝置(ROUTING & NAVIGATION)有條件地加載模塊。 這裏是一步一步教程如何實現這一點:LAZY MODULE LOADING

希望它有幫助。