javascript模块化简单解析
本文为大家解读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'); varSpinning=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模块化有所帮助。