我知道可能需要其他模块,但是您如何告诉 aura 将模块作为扩展处理?
背景:
对于我正在处理的一个大型项目,我正在使用 aura 扩展来修改我保存在应用程序沙箱中的 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');
}
});
对于紧密耦合的插件,我可以指定依赖关系,如此处所示,但对于更松散耦合的组件,我宁愿避免这种情况。