首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Pusher:如何绑定100个事件?

Pusher:如何绑定100个事件?
EN

Stack Overflow用户
提问于 2014-01-03 06:04:48
回答 1查看 3.3K关注 0票数 1

推送库的工作原理如下

代码语言:javascript
复制
var channel = pusher.subscribe('test_channel');
channel.bind('my_event', function(data) {
  alert(data.message);
});

然而:我能做到这一点吗?

代码语言:javascript
复制
var channel = pusher.subscribe('test_channel');
channel.bind(['my_event1', 'my_event2'....'my_event100'], function(data) {
  alert(data.message);
});

在我的用例中,我有一个通道,有许多不同的事件,每个客户端可能希望同时订阅100个事件。

EN

回答 1

Stack Overflow用户

发布于 2014-01-04 02:40:15

channel.bind函数的签名是String channelName, Function callback (pusher-js source)。您不能传入Array `的通道。

如果您希望调用相同的函数,则需要传递对该函数的引用并多次调用bind

代码语言:javascript
复制
var channel = pusher.subscribe('test_channel');
var callback = function(data) {
  alert(data.message);
};

var eventName;
for( var i = 0; i < 100; ++i ) {
  eventName = 'my_event' + ( i + 1 );
  channel.bind( eventName, callback );
}

JS的单线程特性等同于这些事件绑定同时发生。

当然,您也可以创建自己的帮助器函数来支持bind( Array eventNames, Function callback )

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20892778

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档