socket.io对象没有方法'emit'

时间:2013-09-29 19:00:59

标签: javascript node.js socket.io

我收到此错误消息

  

TypeError:Object [object Object]没有方法'emit'

尝试访问helpQue中使用helpQue.push(socket)构建的套接字时。

helpQuecxsQue都是套接字数组。

setInterval(function() {
    if(helpQue.length > 0 && cxsQue.length > 0) {
        var id = makeid(),
            helpee = helpQue.splice(0, 1);

            helpee.emit('server-output', 'Test'); //ERROR here
    }
}, 1000);

1 个答案:

答案 0 :(得分:0)

我将代码切换到

setInterval(function() {
    if(helpQue.length > 0 && cxsQue.length > 0) {
        var id = makeid(),
            helpee = helpQue[0];
            helpQue.splice(0, 1);

            helpee.emit('server-output', 'Test');
    }
}, 1000);

它奏效了。我假设splice发生了一些事情,但无法弄清楚是什么。如果有人知道,请告诉我。