AMD

AMD https://github.com/amdjs/amdjs-api/wiki/AMD-(%E4%B8%AD%E6%96%87%E7%89%88)
異步模塊定義規(guī)范(AMD)制定了定義模塊的規(guī)則,
這樣模塊和模塊的依賴可以被異步加載。
這和瀏覽器的異步加載模塊的環(huán)境剛好適應
(瀏覽器同步加載模塊會導致性能、可用性、調(diào)試和跨域訪問等問題)。

index.html 在body部分
//這里的data-main = "main" 是同目錄 下的main.js
<script src = "lib/require.js" data-main = "main"></script>

=============
main.js

//配置
require.config({
paths :{
//這里是先加載 , 不執(zhí)行 ,所以 不用但心 執(zhí)行 順序
//注意 這里 的 文件 不需要 寫 后綴
'jquery' : './lib/jquery-2.1.1.min',
'Zepto' : './lib/zepto',

    'underscore':   './lib/underscore.min',
    //backbone  依賴 underscore庫 , 所以必需有
    //backbone  單頁 應用
    'backbone'  :   './lib/backbone.min',
    
    //text  用來 解析  切換 內(nèi)容 頁面的 
    'text'  :   './lib/text',
    
    
    'home'  :   './js/home'
    
}

});

// require方法: 當數(shù)組內(nèi)的依賴文件加載完畢之后,
//再執(zhí)行回調(diào)函數(shù)內(nèi)的方法。
//這里可以只加載 , 不執(zhí)行回調(diào)函數(shù) , 如test
//require(['jquery','home','test'],function($,home){

//假如 下面的 依賴文件 上面沒寫, 則 根據(jù) 路徑 來找
//如 router 假如 ,找的只是js文件
require(['jquery','router'],function($,router){
// home.fn1();
});

========================
home.js

define(['Zepto'],function(Zepto){
console.log("home.js");
function fn1(){
$('html').css({
'background':'#000'
});
}
function fn2(){
$('body').html("hello AMD");
}

//多個方法 ,通過 obj返回
return {
    fn1:fn1,
    fn2:fn2
}

});

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容