require.config({
packages:{
x:{
'base':'/test',
main:'main'
}
}
});
require('x') => /test/main.js
require('x/y') => /test/y.js
require.config({
combine:true,
packages:{
'x':{
'base':'/test',
main:'main'
}
}
});
require(['x/1','x/2']) => /test/??1.js,2.js
or set at package level
require.config({
combine:true,
packages:{
'x':{
'base':'/test',
main:'main'
},
'y':{
'base':'/test2',
combine:false,
main:'main'
}
}
});
require(['x/1','x/2','y/1','y/2']) => /test/??1.js,2.js and /test2/1.js and /test2/2.js
only used for combo
require.config({
combine:true,
packages:{
x:{
base:'/test'
}
},
modules:{
'x/1':{
requires:['./2','./3']
}
}
})
require('x/1') => /test/??1.js,2.js,3.js
define(function(require,module,exports){
var x = require('x');
var z = require('./z');
module.exports = x+z;
});
define(function(x,z){
return x+z;
},{
requires:['x','./z']
});
after config package, you can use package and modules asynchronously.
require('x', function(x){
console.log(x);
});
require(['x','y'], function(x,y){
console.log(x,y);
});
use modulex.noConflict() to give up global require and define variable.
var require = global.require;
var define = global.define;
global.require = modulex.use;
global.require.config = modulex.config;
global.define = modulex.add;
mx.noConflict = function () {
global.require = require;
global.define = define;
};