nowjs组离开事件多次调用

时间:2012-03-30 17:05:42

标签: node.js socket.io nowjs-sockets

我正在使用now.js群组,并希望在用户离开群组时进行侦听,以便在群组为空时执行一些整理。我发现每次用户进入一个组时都会多次调用leave事件,即如果我加入一个组并在第三次关闭我的浏览器3次就会被调用3次。

chatserver.prototype.joinGroup = function(groupId) {
   //user joins group
   var group = this.nowjs.getGroup(doc_id);
   group.addUser(that.user.clientId);

   //want to know when a user leaves a group
   group.on('leave', function() {
       console.log("user left group:"+groupId)
       //do group clean up
   });
};

我在确定范围时出错了吗?

1 个答案:

答案 0 :(得分:0)

您应该断开与已连接的群组中的每个用户的连接。

类似的东西:

nowjs.on('disconnect', function() { 
        var that = this;
        this.getGroups( function(groups) {
             for ( i=0 ; i < groups.length; i++ ) {
                 nowjs.getGroup(groups[i]).removeUser(that.user.clientId);
             }
        }
}