Mar*_*bel 3 javascript events node.js socket.io
我想知道在Node.js的Socket.IO客户端库中是否有一个选项可以替换特定事件的侦听器函数.
我有这个简单的功能:
var Service = module.exports = function(address) {
var _socket = require('socket.io-client')(address);
this.connectAccount = function(account, callback) {
_socket.on('account/connected', function (response) {
callback(response.data, response.message);
});
_socket.emit('account/connect', account.getParameters());
};
}
Run Code Online (Sandbox Code Playgroud)
问题是,当我connectAccount()多次调用函数时,我每次都会传递所有匿名函数on()函数get中也被调用,并且在短时间内达到限制并抛出错误.
所以我的问题是,是否有一种方法如何更换每次听众,所以每次只调用一次?
提前致谢.
您可以在附加新侦听器之前删除侦听器,也可以检查是否附加了侦听器.
要删除监听器:
_socker.removeListener('account/connected', [function]);
Run Code Online (Sandbox Code Playgroud)
要检查事件是否有侦听器:
_socker.hasListeners('account/connected');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2659 次 |
| 最近记录: |