Requirejs快速使用


Requirejs是一個簡單,實用,強大的前端模塊化js庫,它遵循AMD這一客戶端模塊定義規范,使用它能夠使我們前端代碼更加清晰高效加載,擺脫了以前前端代碼雜亂無序的狀態。

使用步驟如下:

1.下載require.js文件,地址為 http://www.requirejs.cn/docs/download.html#requirejs,並將其加入我們的項目中;

2.使用define方法定義模塊

這里主要有兩種形式,第一種是定義無依賴的js模塊代碼,即這個js模塊是單獨存在的,不依賴於其他模塊或者js庫,這里新建一個independent.js,代碼如下

define(
    function()
    {
        return{
            test1:function()
            {
                console.log('i am test1');
            },
            test2:function()
            {
                console.log('i am test2');
            }

        }
    }
)

  在這個js文件中定義了一個模塊,返回了一個對象,其包含兩個方法用以外部文件調用,這是定義一個獨立的模塊;

第二種方式是定義一個依賴於其他模塊的模塊,新建一個depend.js,代碼如下:

define(['test'],function(test){
    return{
        showName:function(){
            console.log( test.name);
        },
        showAge:function(){
            console.log(test.age);
        }

    }

});

這里定義了一個模塊,其依賴於test模塊,需要注意的是,requirejs默認js文件名為模塊名,test模塊即對應於test.js文件,在這個模塊中,第一個參數是需要依賴的外部模塊名稱,是一個數組,也可以依賴多個,第二個參數是一個function,其形參test對應着test模塊,所以在showName,showAge方法中課直接調用test的屬性或方法;

test.js

define(
    function()
    {
        return {
            name:'張三',
            age:22
        }
    }
);

這里定義了一個test模塊,返回了包含name和age的一個對象,供其他模塊調用.

3.使用require調用模塊

新建一個main.js,用來作為項目的主js文件,即在頁面中只加載這個js文件,其他js文件都通過它以模塊調用的形式存在,代碼如下:

require(["depend"],function(de){
    de.showAge();
    de.showName();


});

表示調用depend模塊,並調用其showAge和showName方法。

在html中加載requirejs,將其data-main屬性指向我們的主js文件main.js

<script data-main="main.js" src="require.js"></script>

結果如下:

4.加載jQuery

平時開發中jQuery用的很多,最新版1.11以上的都遵循AMD規范,可以利用requirejs直接將其作為一個模塊加載進來

在main.js中添加require.config,對jQuery進行配置,代碼如下:

require.config(
    {
        paths:{
            jquery:"http://code.jquery.com/jquery-1.11.1.min"
        }
    }
);

這里配置了一個jQuery模塊,它的地址為一個CDN地址,也可以將其下載到本地,地址指向本地地址也可以,注意地址后面沒有.js,

然后就可以使用require方法來調用了,main.js中調用代碼如下:

require(["jquery","depend","independent"],function($,de,ind){
    de.showAge();
    de.showName();
    console.log($("#span1").html());
    ind.test1();
    ind.test2();

});

這里調用了三個模塊,我們之前自己定義的兩個加上jQuery模塊,並且使用了他們中的方法,其中jquery模塊選擇html頁面上的一個span並將其內部文字輸出到控制台

其余兩個模塊調用的都是在他們內部自定義的方法

最終結果如下:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM