執行模塊的機制大不同
-----------------------------------
因爲 RequireJS 是執行的 AMD 規範, 所以全部的依賴模塊都是先執行.異步
使用 RequireJS 默認定義模塊的方式, 在理解上會更清楚一些, 但我的仍是偏心 require('./mod1') 這樣的方式
define(['dep1', 'dep2'], function (dep1, dep2) {
//Define the module value by returning a value.
return function () {};
});ui
---------------------------------------------------------------------------
SeaJS對模塊的態度是懶執行, 而RequireJS對模塊的態度是預執行io
================================================================function
SeaJS只會在真正須要使用(依賴)模塊時才執行該模塊
SeaJS是異步加載模塊的沒錯, 但執行模塊的順序也是嚴格按照模塊在代碼中出現(require)的順序, 這樣才更符合邏輯吧!
而RequireJS會先儘早地執行(依賴)模塊, 至關於全部的require都被提早了, 並且模塊執行的順序也不必定100%就是先mod1再mod2
所以你看到執行順序和你預想的徹底不同! 顫抖吧~ RequireJS!require