我有两个文件:main.js和events.js。
在main.js中,我定义了一些函数,看起来像这样:
define(["jquery"], function() {
var a = {
function_a: function(){
some_actions;
}
}
var b = {
function_b: function(){
some_actions;
}
}
return a, b;
});
在events.js中我有一些调用这个函数:
require(['jquery','app/main'], function($, a){
selector.on('click', function(){
a.function_a();
});
});
require(['jquery','app/main'], function($, b){
selector.on('click', function(){
b.function_b();
});
});
有些事情是错的,因为我不能调用多个函数,有人可以帮忙吗?
答案 0 :(得分:2)
而不是return a,b
这是无效的语句,你需要返回一个对象,例如:
return {'a':a, 'b':b}
然后在你的代码中你可以写:
require(['jquery','app/main'], function($, obj){
selector.on('click', function(){
obj.a.function_a();
obj.b.function_b();
});
});
您也可以使用数组。然后返回return [a,b]
并在require函数中:
require(['jquery','app/main'], function($, obj){
selector.on('click', function(){
obj[0].function_a();
obj[1].function_b();
});
});