commandjs、AMD、CMD之間的故事

commandjs:同步加載,只運行一次,後面使用第一次加載時運行的結果(存於緩存中),用於服務器git

AMD:define(id ?,dependencies ?,factory) 異步加載,用於瀏覽器,提早執行,依賴前置github

CMD:延時執行,依賴就近api

// CMD
define(function(require, exports, module) {
var a = require('./a')
a.doSomething()
// 省略代碼
var b = require('./b') 

// 依賴就近原則
b.doSomething()
// ... 
})

// AMD 推薦
define(['./a', './b'], function(a, b) { 

// 依賴必須前面寫好
a.doSomething()
// 省略代碼
b.doSomething()
...
})

 

參考:https://github.com/seajs/seajs/issues/242瀏覽器

         https://github.com/amdjs/amdjs-api/wiki/AMD緩存

相關文章
相關標籤/搜索