参数中的数组来自参数

时间:2012-08-10 10:36:03

标签: javascript jquery publish-subscribe

我的实际javascript项目中有一个非常奇怪的情况。我创建了一个自定义事件并将数组放入此事件

$.publish("merilon/TablesLoaded", getTables());

订阅此活动的对象未获得

$.subscribe("merilon/TablesLoaded", myfunc)

两个参数事件和函数myfunc中的数组。相反,它获取事件,然后从数组中的每个条目作为以下参数

所以我所期待的是

myfunc(event, [obj1, obj2, obj3 ... objn]){...}

但是我得到了

myfunc (event, obj1, obj2, obj3 ... objn){...}

我不想要一个解决方法。我需要的是理解为什么会发生这种情况以及如何防止这种情况发生。有人有想法吗?

1 个答案:

答案 0 :(得分:0)

如上所述:

(function($)
 {
 var o = $({}); 
 $.each(
       { on : "subscribe", trigger : "publish", 
         off : "unsubscribe" }, 
         function(key, api)
           { 
           $[api] = function()
                       {
                       o[key].apply(o, arguments); 
                       } 
            }
       ); 
       })(jQuery);