поправить отписку
This commit is contained in:
@@ -3,18 +3,23 @@ function События(uuid)
|
|||||||
this.создать = function()
|
this.создать = function()
|
||||||
{
|
{
|
||||||
this.обработчики = [];
|
this.обработчики = [];
|
||||||
|
this.обработчики = {};
|
||||||
};
|
};
|
||||||
|
|
||||||
this.подписать = function(обработчик)
|
this.подписать = function(обработчик, имя)
|
||||||
{
|
{
|
||||||
this.обработчики.push(обработчик);
|
let указатель = имя || uuid();
|
||||||
|
this.обработчики[указатель] = обработчик;
|
||||||
};
|
};
|
||||||
|
|
||||||
this.отписать = function(обработчик) {
|
this.отписать = function(обработчик) {
|
||||||
var номер = this.обработчики.indexOf(обработчик);
|
for (var указатель in this.обработчики) {
|
||||||
if (номер != -1)
|
let обр = this.обработчики[указатель];
|
||||||
{
|
if (обр == обработчик)
|
||||||
this.обработчики.splice(номер, 1);
|
{
|
||||||
|
delete this.обработчики[указатель];
|
||||||
|
return;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user