Przekazywanie tablic przez jQuery tiny PubSub
jQuery tiny PubSub jest świetny przy przekazywaniu prymitywnych wartości lub obiektów, ale ma pewne problemy z tablicami. Muszę więc owinąć tablice w obiekt.
(function($) {
var o = $({});
$.subscribe = function() {
o.on.apply(o, arguments);
};
$.unsubscribe = function() {
o.off.apply(o, arguments);
};
$.publish = function() {
o.trigger.apply(o, arguments);
};
}(jQuery));
$.subscribe('test',function(e,data){
console.log(data);
})
$.publish('test',1); //1
$.publish('test',{a:1}); //{a:1}
$.publish('test',[2,3,4]); //2
$.publish('test',{arr:[2,3,4]}) //{arr:[2,3,4]}
Widziałem kilka jego ulepszonych wersji, które skupiają się głównie na buforowaniu subskrybentów, ale żaden z nich nie może przekazywać tablic. Tak więc dwa pytania:
Czy dobrym pomysłem jest przekazywanie tablic za pośrednictwem PubSub?Jak to zrobić?