Рассмотрим код:
class x {
public variable: number = 0;
public x() {
const c = [];
c.push({
xxx () {
console.log(this.variable);
}
});
}
}
Анонимная функция xxx не имеет доступа к «this» класса «x».Обычно это может быть скомпилировано, только если «this» неявно имеет тип any. Но он компилируется .
Если я извлекаю свой литеральный объект в отдельное значение, я на самом деле получаю ожидаемую ошибку компиляции .
Это ошибка компилятора?
Примечание: вам нужно вручную включить noImplicitThis в машинописной игровой площадке, потому что, по-видимому, опции не доступны для совместного использования.