Я пытаюсь создать собственную версию, которая подходит для моих нужд, методов emit() и on() сокета.io. я был в состоянии сделать это для метода Emit(), как это:Wrap socket.io emit and on methods
socket._emit = function() {
console.log('socket._emit ', arguments);
event = arguments[0];
data ={
'username': user.username,
'token': user.token,
'data': arguments[1]
};
socket.emit.apply(this, [event, JSON.stringify(data)]);
};
У меня есть проблемы, чтобы сделать это для метода на(), потому что я не в состоянии получить данные о функции обратного вызова , поэтому теперь мой пользовательский _on() не делает ничего особенного, просто вызывает значение по умолчанию().
socket._on = function() {
socket.on.apply(this, arguments);
};
Моей целью является регистрация всех данных, полученных обратным вызовом метода on(). Я пробовал что-то вроде этого, но не работал.
socket._on = function() {
callback = function(){
console.log('socket._on ', //arguments from arguments[1]()//);
arguments[1]();
}
socket.on.apply(this, [arguments[0], callback()]);
};
Любая идея о том, как улучшить мой тест?
Спасибо, Алессандро
Вы уже справились с этим? – Garre
Да, я смог получить некоторые данные из обратного вызова. Я отправил ответ с кодом. – alessandrocaprarelli