RequireJS shim 用法說明

賀臣發表於2016-09-20

 

 

  RequireJS中如果使用AMD規範,在使用的過程中沒有太多的問題,如果載入非AMD規範的JS檔案,就需要使用Require中的shim.

require.config({
    paths:{
        jquery:"/js/jquery2.0",
        InStorage:"/js/in/InStorage",
        Product:"/js/product/Product",
        cate:"/js/product/Category",
    },
    shim:{
        cate:{
            deps:[],
            exports:"Category"
        }
    }
});

 

  cate:"/js/product/Category" 該檔案是非AMD規範的JS,在使用的過程中遵循如下幾個步驟:

  (1) paths 中配置檔案載入的路徑, JSON中的 Key值可以隨意,儘量有意義,JSON中的Value是檔案的載入路徑,這個不必多說

  (2) shim 中定義一個JSON物件, Key 值(cate) 與paths中定義的名字一樣

  (3) shim中的JSON物件有兩個屬性: deps,exports ;  deps 為陣列,表示其依賴的庫, exports 表示輸出的物件名

 

var Category=(function(){

    var param={};

    param.Add=function(){
        console.log("新增分類");
    }

    return param;

})();


var Category=(function(param){

    param.Write=function(){
        console.log("輸出分類資訊");
    }

    return param;

})(Category||{});

 

  requirejs可以實現js的延時載入, 在方法呼叫的時候載入JS,也就是在function 中require 某個模組的資訊

define(function(){

    var ProductManager={
        Create:function(){
            console.log("建立產品");

            require(["cate"],function(cate){
                cate.Write();
                cate.Add();
            });
        }
    }

    return ProductManager;

});

 

 


作者:情緣
出處:http://www.cnblogs.com/qingyuan/
關於作者:從事倉庫,生產軟體方面的開發,在專案管理以及企業經營方面尋求發展之路
版權宣告:本文版權歸作者和部落格園共有,歡迎轉載,但未經作者同意必須保留此段宣告,且在文章頁面明顯位置給出原文連結。
聯絡方式: 個人QQ  821865130 ; 倉儲技術QQ群 88718955,142050808 ;
吉特倉儲管理系統  開源地址: https://github.com/hechenqingyuan/gitwms

相關文章