我在实际的 javascript 项目中遇到了一个非常奇怪的情况。我创建了一个自定义事件并将数组放入该事件
$.publish("merilon/TablesLoaded", getTables());
订阅此事件的对象没有获取
$.subscribe("merilon/TablesLoaded", myfunc)
函数myfunc中的两个参数event和数组。相反,它获取事件,然后将数组中的每个条目作为以下参数
所以我期待的是
myfunc(event, [obj1, obj2, obj3 ... objn]){...}
但是我明白了
myfunc (event, obj1, obj2, obj3 ... objn){...}
我不想要解决方法。我需要的是了解为什么会发生这种情况以及如何防止这种情况发生。有人有想法吗?
如上所述:
(function($)
{
var o = $({});
$.each(
{ on : "subscribe", trigger : "publish",
off : "unsubscribe" },
function(key, api)
{
$[api] = function()
{
o[key].apply(o, arguments);
}
}
);
})(jQuery);
Tôi là một lập trình viên xuất sắc, rất giỏi!