簡體   English   中英

如果有條件地使用require來進行Dojo構建問題,則需要在第一層中加載另一個模塊,這需要第一層中已經包含的模塊

[英]Dojo build issues if require is used conditionally to load another module in one layer which requires modules already included in the first layer

我有一種情況,我試圖通過將所有內容添加到單個圖層來將dojo和我的應用程序構建到一個文件中。 但是,在dojo的gfx / render中,渲染器是動態確定的,並且require語句用於獲取該渲染器的模塊。 因此,構建后,我的最終js文件中沒有這些渲染模塊。

當我加載最終的js文件時,它會嘗試在其實際位置中找到渲染器。

如果我將這些文件添加到新的圖層中,則會導致新的問題。 加載的渲染器模塊在其依賴項列表中定義了其他dojo模塊,其中大多數已經包含在先前的最終js文件中(第1層)。

因此,這導致較大的層。

可以使用什么解決方案來解決此問題?

您還需要在構建中包括動態必需的模塊...為此,您可以創建一個加載程序模塊(例如LoaderModule)並在其中包含那些依賴項,然后將該模塊作為依賴項添加到您的模塊之一中。層。 不久:

LoaderModule.js:

define([
    'dojo/_base/declare',

    /* Add all dynamically required modules here to include in production build */
    'dojox/gfx/renderer'

], function(declare) {
    return declare(null, {});
});

然后將LoaderModule作為依賴項添加到您的核心模塊之一。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM