AMD
全稱是Asynchronous Module Definition,即異步模塊加載機制
require.js實現了AMD規範
在AMD中,導入和導出模塊的代碼,都必須放置在define函數中
define([依賴的模塊列表], function(模塊名稱列表){
//模塊內部的代碼
return 導出的內容
})
<script data-main="./a.js" src="./js/require.js"></script>data-main找到入口文件
頁面
html頁面<script data-main="./a.js" src="./js/require.js"></script>
a.js
console.log("我是a模塊");
define(["b"],(b)=>{
console.log("a模塊內容",b)
return "a模塊內容!返回值"
})
b.js
define(()=>{
console.log("b.js")
return "我是b.js文件"
})
執行順序
a.js:1 我是a模塊
b.js:2 b.js
a.js:4 a模塊內容 我是b.js文件
CMD
全稱是Common Module Definition,公共模塊定義規範
sea.js實現了CMD規範
在CMD中,導入和導出模塊的代碼,都必須放置在define函數中
define(function(require, exports, module){
//模塊內部的代碼
})