本文為大家解讀javascript的模組化,具體內容如下
AMD是RequireJS在推廣過程中對模組定義的規範化產出。
非同步載入模組,依賴前置,提前執行。
Define定義模組 define([‘require','foo'],function(){return});
Require載入模組(依賴前置) require([‘foo','bar'],function(foo,bar){});
CMD是SeaJS在推廣過程中對模組定義的規範化產出。
Define定義exports 導出define(function(require,exports,module){}); module上儲存了目前模組上的一些物件。
require(./a)直接引入。 Require.async非同步引入。
同步加載,依賴就近,延遲執行。
SeaJS 的應用
官方入門範例:http://seajs.org/docs/#quick-start
怎麼寫一個SeaJS模組?
// 所有模块都通过 define 来定义 define(function(require, exports, module) { // 通过 require 引入依赖 var $ = require('jquery'); var Spinning = require('./spinning'); // 通过 exports 对外提供接口 exports.doSomething = ... // 或者通过 module.exports 提供整个接口 module.exports = ... });
在頁面中載入模組
//在 hello.html 页尾,通过 script 引入 sea.js 后,有一段配置代码: // seajs 的简单配置 seajs.config({ base: "../sea-modules/", alias: { "jquery": "jquery/jquery/1.10.1/jquery.js" } }) // 加载入口模块 seajs.use("../static/hello/src/main")
以上就是關於javascript模組化的簡單介紹,希望對大家學習javascript模組化有所幫助。