1.引入文件
seajs.config({
'alias': {
'juicer':'res-build/res/module/juicer/juicer-min.js',
'page':'/res-build/res/module/ajaxpage/src/page.js',
"tool":'/res-build/src/tools.js'
},
'map': [
[ /^(.*\.(?:css|js))(.*)$/i, '$1?t=20140327']
],
base:"/"
});
2.加载引入模块:seajs.use("路径")
3.模块化基础:define(function(){require, exports, module});
4.获取某个模块:require("")
eg: a.js
define(function (require, exports, module) {
var arrayObj = new Array();
var operation = {
add: function (a,b) {
return a+b;
},
put: function(obj){
return arrayObj.push(obj);
},
get:function(i){
return arrayObj[i];
},
size:function(){
return arrayObj.length;
},
iterator:function(){
var str = "";
for ( var i=0 ; i < arrayObj.length ; ++i ){
str = str + arrayObj[i] + ", ";
}
return str;
},
join:function(c){
return arrayObj.join(c);
}
};
/**
* exports把自己本模块的内容暴露给外面的2种形式
*/
//exports.util = operation;//myUtil.util.add(1,1);
module.exports = operation;//myUtil.add(1,1)
});
调用方法:
var myUtil=require("./aa");
console.log(myUtil);
console.log(myUtil.add(1,1));
myUtil.util.put(1);myUtil.util.put(2);myUtil.util.put(3),myUtil.util.put(4);
console.log(myUtil.util.get(0));
console.log(myUtil.util.size());
console.log(myUtil.util.iterator());
console.log(myUtil.util.join(","));
/*
* exports and module实例分析
*/
//math.js
define(function(require, exports, module) {
exports.add = function() {
var sum = 0, i = 0, args = arguments, l = args.length;
while (i < l) {
sum += args[i++];
}
return sum;
};
});
//increment.js
define(function(require, exports, module) {
var add = require('math').add;
exports.increment = function(val) {
return add(val, 1);
};
});
//program.js
define(function(require, exports, module) {
var inc = require('increment').increment;
var a = 1;
inc(a); // 2
module.id == "program";
});
Sea.js 的调试接口
seajs.cache Object
通过 seajs.cache
,可以查阅当前模块系统中的所有模块信息。
比如,打开 seajs.org,然后在 WebKit Developer Tools 的 Console 面板中输入 seajs.cache
,可以看到:
Object
> http://seajs.org/docs/assets/main.js: x
> https://a.alipayobjects.com/jquery/jquery/1.10.1/jquery.js: x
> __proto__: Objec
seajs.data Object
通过 seajs.data
,可以查阅当前模块系统中的所有模块信息。
比如,打开 seajs.org,然后在 WebKit Developer Tools 的 Console 面板中输入 seajs.cache
,可以看到: