1. 程式人生 > >require-js-模塊化 CMD AMD

require-js-模塊化 CMD AMD

有助於 c module rip nbsp 依賴 能夠 加載器 基礎上 衍生

模塊化的標準
有了模塊,我們就可以更方便地使用別人的代碼,想要什麽功能,就加載什麽模塊。這樣做有一個前提,那就是大家必須以同樣的方式編寫模塊,否則你有你的寫法,我有我的寫法,豈不是亂了套!

CommonJS:是一個模塊化的標準,Node.js在使用的模塊化標準。適用與後端開發的標準。
AMD(Async Module Definition):在CommonJS基礎上衍生出來的適用於前端開發的模塊化標準。
特點:預加載,第一次訪問時,將所有的文件都加載出來。
優點:第一次訪問完成以後,再次訪問速度會很快
缺點:第一次加載,需要的時間會比較長
代表:requirejs
CMD(Common Module Definition):

在CommonJS基礎上衍生出來的適用於前端開發的模塊化標準。
特點:懶加載,只有使用到的時候,才會加載對應的模塊。
優點:第一次訪問速度會比較快
缺點:再次訪問其他模塊時會比較慢。
代表:seajs


require.JS
require.js概念
requirejs是AMD規範的一個實現,require.js是一個javascript文件,也是一個模塊加載器。模塊加載器:相當於canvas中封裝的圖片加載器,只不過一個是加載圖片的,一個加載js,文件的類型不一樣。

requirejs主要提供兩大功能:

加載模塊:可以加載AMD規範的模塊,也可以是普通的模塊,異步加載,並且能夠管理模塊之間的依賴。
規範了模塊的定義:有助於不同模塊之間的共享與依賴。

requirejs的優點:

提高了javascript文件的加載速度,避免不必要的堵塞。
獨特的模塊定義方式可以避免全局變量汙染。
獨特的模塊定義方式可以在腳本層面聲明模塊之間的依賴。

API詳解

requirejs一共對外暴露三個全局變量

  1. requirejs - 用於加載模塊
  2. require - 用於加載模塊
  3. define - 用於定義模塊

requirerequirejs是同一個函數,類似於$jQuery的關系

---------------------
作者:夢行天宇001
來源:CSDN
原文:https://blog.csdn.net/u014440483/article/details/77737449?utm_source=copy

require-js-模塊化 CMD AMD