我創建了一個由多個ES2015模塊組成的組件庫。每個都是相對獨立的,但是有一個外部構建系統來幫助促進集成測試和部署。 其中一個模塊具有核心模塊和一組可選子模塊。該代碼結構看起來鬆散,如:webpack babel loader兩次導入相同的模塊
root
.\build\...
.\src
.\bundle1
.\build\...
.\src
.\core.js
.\submodules\
.\a.js
.\b.js
由於歷史的原因,有幾個子模塊取決於核心模塊上,就目前而言,必須用它來部署,所以最終被一個有點循環依賴。如前所述,每個模塊都是相對獨立的,因此它有自己的構建系統。當使用本地構建時,一切都顯示正常。當「主」構建系統被使用時,問題就會變得明顯。當它啓動相同的構建時,核心塊最終會生成兩次。內部子模塊將自己附加到第一個實例,但第二個實例實際上被導出,使得整個卡片房子變得毫無用處。 這似乎不是一個webpack的問題,因爲當我創建演示應用時,我沒有使用babel,並且沒有出現錯誤。
道歉了那麼久才切入正題...... 我的問題是,有什麼明顯的是我丟失可能會造成這一點,或者是有錯誤的地方通天/的WebPack,巴貝爾-loader?
由於這有點複雜,我創建了this reference project而不是在這裏內聯源碼。如上所述,/ develop不顯示這個問題,因爲它不使用babel。 add-babel分支的確如此。
鏈接指示當涉及動態導入時使用上下文。 –
是的。在這種情況下,我的問題是我不知道'context'是一個配置選項。我責備WebPack的godawful文件:第 –