在旧版本的Socket.IO(版本< 1.0)中,socket.io-client的namespace包含其原型的$ emit函数。我还没有正确理解这一点,但有了这个,客户端的事件可以在本地发送到同一个客户端。
但是,在最新版本的Socket.IO中,无法在Socket模块之外访问emit函数。
问题是:是否还有办法从客户端向自己发出事件?
答案 0 :(得分:1)
我会对答案进行评论,因为它似乎帮助您解决了问题。
如果您想要访问原始.emit()
方法,可以从EventEmitter.prototype.emit()
获取并使用.call()
在相应的具有相应事件处理程序的对象上调用它。< / p>
EventEmitter.prototype.emit.call(someObj, "myMsg", mydata);