從我的web應用程序中,當用帶有「:optimizations:none」的代碼進行編譯時,加載所有js文件後,「window」對象上有大約300個全局項進入瀏覽器帶有「:optimizations:advanced」的全局變量/函數太多
但是,當編譯帶有「:optimizations:advanced」的代碼時,有大約10K個全局項目(函數和對象)。
似乎微型化戰略正在使所有事情都變得全球化。有沒有辦法改變它的行爲?
這裏是一個攝製repo
運行 「雷音做清潔& &雷音cljsbuild一次」 檢查 「雷音-cljsbuild /例如項目/高級/資源/公/ JS /主debug.js」
#更新: 原因「:輸出包裝」不適用於我的情況是我在我的構建配置中使用「:模塊」,一個模塊將取決於另一個。編譯器不能用(function(){})()打包模塊,因爲它會打破依賴關係。例如,模塊foo必須從模塊欄訪問變量欄。
@DanielCompton因爲它把一切都變成全局範圍。 –