簡單來講,requirejs就是用define來聲明模塊,用require來執(zhí)行模塊
requirejs 加載的模塊都符合AMD,也就是說自己寫的模塊都必須符合AMD規(guī)范,下邊來說下AMD模塊的寫法。
- 在介紹前,先描述下簡單的目錄結(jié)構(gòu)
目錄結(jié)構(gòu)
project
|scripts
|libs
jquery.min.js
// other js files
|control
module1.js
main.js//入口文件
others
index.html
- index.html引用
<script src="js/libs/require.js" data-main="js/main.js"></script>
通常我們用define 來定義一個模塊
- 配置main.js
require.config({
baseUrl: "js",
paths: {
"jquery": "libs/jquery-1.11.3",
"m1":'control/module1'}
});
* 聲明模塊
//目錄結(jié)構(gòu)中文件名 module1.js
define(function(){
return {
init: function(){
console.log(1)
}
}
})
如果模塊需要依賴于jquery
define(['jquery'],function($){
return {
init: function(){
console.log($)
}
}
})
* 加載使用
require(['jquery','m1'],function(j,m){
//dosomething
})
思考: 一個完整的項目具有不同的頁面,如何對不同的頁面進行按需加載?