什么是模塊化?模塊化的優點?


什么是模塊化:
CommoonJs
    每一個js文件就是一個就是模塊,每個模塊有單獨的作用域。
    模塊以module.exports為出口,輸出一個對象。
    使用require方法讀取文件,並返回其內部的module.exports對象。
    問題:
    同步加載,在服務端很正常但是在充滿異步的瀏覽器中用就不合適了。
AMD
    規定用全局全局變量函數define來定義模塊,用法為define(id,dependencies,factory);
                id:模塊標識
                dependencies:是一個數組,里面是該模塊依賴的其他模塊
                factory:是一個匿名函數,里面是該模塊的邏輯。
CMD  
       seajs全面擁抱Modules/Wrappings規范,不用requirejs那樣回調的方式來編寫模塊。
       而它也不是完全按照Modules/Wrappings規范,seajs並沒有使用declare來定義模塊,而是使用和requirejs一樣的define。定義模塊時無需羅列依賴數組,在factory函數中需傳入形參require,exports,module,然后它會調用factory函數的toString方法,
        對函數的內容進行正則匹配,通過匹配到的require語句來分析依賴。
AMD與CMD的區別

    AMD和CMD最明顯的區別就是在模塊定義時對依賴的處理不同
    AMD推崇依賴前置,在定義模塊的時候就要聲明其依賴的模塊
    CMD推崇就近依賴,只有在用到某個模塊的時候再去require

模塊化設計的優點:
    1、非常便於內容的組織和管理;
    2、適用於響應式框架;
    3、融合卡片和極簡風格;


免責聲明!

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



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