Для socket.on ("someChannel", обработчик), я надеюсь извлечь функцию моего обработчика в другой файл. Таким образом, их необходимо передать в сокет obj и еще одну дополнительную информацию.Как передать больше параметров для socket.on()
Как:
socket.on("myEvt", myEvtHandler);
myEvtHandler(socket, additionalInfo, data) {//some stuff here}
Но я не могу. Самое лучшее, что я могу придумать, это закрыть:
(function(socket, addtionalInfo) {
socket.on("myEvt", function(data) {
myEvtHandler(socket, addtionalInfo, data);
});
})(socket, addtionalInfo);
Это правильно? Есть ли лучшие способы?
ли вы подтвердить, что 'this' в обработчике' .on' не является самим сокетом? если нет, вы можете просто «socket.on» («myevet», myEvtHandler.bind (сокет)); ' –