Удаление ненужного события/коллбека
Доброе время.
Не могу понять, как удалить у события каллбек. Вижу, что в функции notifyChange есть замыкание и оно уже не обращает внимания на изменёный "stat", но как это замыкание удалить или заменить, не могу сообразить. function callbackA(){console.log("A");} function callbackB(){console.log("B");} var conform = {}; function notifyChange(EventId, callback) { conform[EventId] = callback; if (callback && typeof callback === "function") { this._socket = new WebSocket("ws://127.0.0.1/", "rpc"); var socket = this._socket; socket.onopen = function() { socket.send(JSON.stringify({"A": "1"})); }; socket.onmessage = function(msg) { var responseEventId = JSON.parse(msg.evtid); conform(responseEventId); }; } else { console.Error("Error"); callback(-1); } } notifyChange('1', callbackA); notifyChange('1', callbackB); Мне нужно, чтобы после вызова "notifyChange(1, callbackB);" событие '1' забыло о каллбэке callbackA. Ищу сам принцип, как это нужно делать. |
У тебя при каждом вызове создается новый сокет. Так и задумано?
|
Часовой пояс GMT +3, время: 06:50. |