我知道可以要求其他模块,但是如何告诉光环将模块作为扩展处理?
对于我正在处理的大项目,我正在使用光环扩展来修改我在应用程序沙箱中保留的jQuery实例。典型的扩展名看起来像这样,其中plug1
和plug2
是jQuery插件。
define({
require : {
paths : {
'jquery.plug1' : 'lib/plug1',
'jquery.plug2' : 'lib/plug2'
},
shim : {
'jquery.plug1' : {
exports : 'jQuery'
},
'jquery.plug2' : {
deps : ['jquery.plug1'],
exports : 'jQuery'
}
}
},
initialize : function(app) {
var $ = app.sandbox.$;
$ = require('jquery.plug1');
app.sandbox.$ = require('jquery.plug2');
}
});
对于紧密耦合的插件,我可以指定依赖关系,如此处所示,但我宁愿避免使用更松散耦合的组件。