RequireJS 是一個JavaScript模塊加載器。它非常適合在瀏覽器中使用。使用RequireJS加載模塊化腳本將提高代碼的加載速度和質(zhì)量。
兼容性
優(yōu)點
實現(xiàn)js文件的異步加載,避免網(wǎng)頁失去響應
管理模塊之間的依賴性,便于代碼的編寫和維護
快速上手
step 1
引入require.js
require()中的依賴是一個數(shù)組,即使只有一個依賴,你也必須使用數(shù)組來定義
第二個參數(shù)是回調(diào)函數(shù)(callback),可以用來解決模塊之間的依賴性
<!DOCTYPE html> <html> <head> <script type="text/javascript" src="require.js"></script> <script type="text/javascript"> require(["js/a"], function(){ alert("load finished"); }); </script> </head> <body> body </body> </html>
step 2
require.config是用來配置模塊加載位置
如果固定的位置比較長,可以使用 baseUrl : "js",則paths中就不用寫js了
<!DOCTYPE html> <html> <head> <script type="text/javascript" src="require.js"></script> <script type="text/javascript"> require.config({ paths : { "jquery" : ["http://vs.thsi.cn/js/jquery-1.7.2.min", "js/jquery"], "a" : "js/a" } }); require(["jquery", "a"], function(){ alert("load finished"); }); </script> </head> <body> body </body> </html>
step 3
step 2中重復出現(xiàn)了require.config配置,如果每個頁面中都加入配置,就顯得不大好了,requirejs提供了一種叫"主數(shù)據(jù)"的功能
創(chuàng)建一個main.js把step 2中require.config放到main.js中
<script data-main="js/main" src="js/require.js"></script>
step 4
通過require加載的模塊一般都需要符合AMD規(guī)范即使用define來申明模塊,但是部分時候需要加載非AMD規(guī)范的js,這時候就需要用到另一個功能:shim
require.config({ shim: { "underscore" : { exports : "_"; }, "jquery.form" : ["jquery"] } }); require(["jquery", "jquery.form"], function($){ $(function(){ $("#form").ajaxSubmit({...}); }) });
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com