В следующем коде компилятор Typcript говорит, что свойство doit не существует в типе 'never'. Может ли это быть ошибкой компилятора?Свойство 'x' не существует в типе 'never'
class X {
public foo(): void {
if (this instanceof Y) {
} else {
this.doit();
}
}
private doit(): void {
}
}
class Y extends X {
}
Я нашел следующий обходной путь:
const temp = (this instanceof Y);
if (temp) {
} else {
this.doit();
}
компилятор не имеет каких-либо проблем с этим эквивалентный код, который снова приводит меня подозревать, есть ошибка компилятора здесь.
Это хак, необходимый для устаревших причин, то есть исходный код Y не может быть изменен. – user2486738