【发布时间】:2020-11-20 00:03:58
【问题描述】:
打字稿可以推断从构造函数调用的方法设置实例变量。
Typescript 编译器报错
" 属性“变量”没有初始值设定项,也没有在构造函数中明确分配。 "
下面的代码:
class A {
private variable: string;
private constructor() {
this.setVariable("default");
}
public setVariable(value: string){
this.value = value;
}
}
这迫使我使用 ts-ignore:
// ts-ignore
private variable: string;
【问题讨论】:
-
private variable: string = '';或private variable!: string; -
不,因为不能保证
class A的消费者会调用setVariable。没有强制A的客户致电setVariable。因此,这里无法实现可靠的推理。
标签: typescript