#typescript #typescript-generics
Вопрос:
export class BaseEntity<T extends BaseEntityGenerics = BaseEntityGenerics> extends BaseObserver<T['LISTENER']>
public setLocked(locked: boolean = true) {
this.fireEvent(
{ locked: true}, //error here
'lockChanged'
);
}
}
Но в этом коде нет ошибки
export class BaseEntity<T extends BaseEntityGenerics = BaseEntityGenerics> extends BaseObserver<BaseEntityListener>
public setLocked(locked: boolean = true) {
this.fireEvent(
{ locked: true}, //NO error here
'lockChanged'
);
}
}
Я не могу понять, какой тип, по мнению TS, должен использовать первый блок кода. Также, почему работает второй блок кода?
Комментарии:
1. избегайте мутаций в TS, если вы хотите вывести аргументы функции.
event = {
2. Постарайтесь сократить свой пример и сделать его минимально воспроизводимым