1. 定义模块
使用Do.define方法定义一个模块,可以是js或者css类型,可以指定依赖。示例:
Do.define('lightBox-css', {path: '{URL}', type: 'css'});
Do.define('lightBox', {path: '{URL}', type: 'js', requires: ['lightBox-css']});
2. 设置已加载模块
原则上建议所有模块都在Do.js中进行定义,但有些文件默认已加载(如jQuery)则可设置该模块为已加载。示例:
Do.define('jquery', {path: 'js/jquery', type: 'js'});
Do.setLoaded('jquery') //参数可以是数组
3. 为ndoojs标识模块
当某些ndoojs模块默认未载入,需要进行按需加载时可以在Do.js中定义该文件,但需要为ndoojs标识出该模块存在。
(function(){
var _n;
this.N = this.ndoo || (this.ndoo = {});
_n = this.ndoo;
Do.define('home', {
path: 'js/example1.js',
type: 'js'
});
// 在NAPP_DEFINE事件触发以后调用setApp标识module
_n.on('NAPP_DEFINE', function(){
_n.setApp('home');
});
Do.define('example3.block', {
path: 'js/example3.block.js',
type: 'js'
});
// 在NBLOCK_DEFINE事件触发以后调用setBlock标识block
_n.on('NBLOCK_DEFINE', function(){
_n.setBlock('example3.block');
});
})(this);