2013-04-16 94 views
1

我希望對SPA中使用BundleConfig和Require.js的任何合理解釋。你怎麼選擇在啓動應用程序時由BundleConfig加載哪些腳本?不應該在BundleConfig中調用哪些腳本並通過AMD有選擇地加載?一旦由BundleConfig加載,它們是否必須在require.js的DEFINE語句中再次調用?使用BundleConfig和Require.js的SPA

搜索我可能,我根本無法找到所有這一切的簡單解釋。

謝謝!

回答

2

BundleConfig將幫助您在1次旅程中將所有腳本捆綁到客戶端。這就爲require.js帶來了負擔或工作。我經常爲第三方腳本執行此操作,因爲無論如何,我很有可能需要所有客戶端。

然後我可以選擇使用require.js來根據需要加載我的腳本(也就是AMD)或將它們捆綁在一起。

雖然需求不會異步加載。它還處理依賴關係解決方案。對我而言,這是更重要的部分。它確保在我使用模塊A之前,如果它依賴於B,這取決於C,這取決於D,這首先得到解決。所以他們得到加載並按照正確的順序運行。

因此,無論您使用的是捆綁還是不捆綁,require.js依賴方面都非常有價值。

+0

感謝您的回覆,約翰。我想我正在努力制定一個加載腳本的好策略。例如,在你的CCJS-Scratch項目中,你決定在BundleConfig中加載knockout和微風(在q之後)。但是,您決定根據需要加載迪蘭道爾。你爲什麼做出這個決定? – CCPony

+0

所有第三方腳本都捆綁在一起,除了杜蘭達。這就是我滾動的方式。然後根據需要或在他們自己的包中自己的腳本。 Durandal我讓自己處理,因爲它根據需要加載自身(除非您使用optimizer.exe) –