需要只读修饰符

时间:2019-06-25 09:49:27

标签: typescript tslint

在接下来的课程中,tslint readonly-keyword不允许我拥有常规变量timestamp,即使我在班级内重新分配了值。我需要将变量timestamp默认设置为false,并在需要时进行重新分配。

export default class A {
    private timestamp: boolean = false;

    withTimestamp() {
        this.timestamp = true;
    }
}

如果我执行以下操作,

export default class A {
    private readonly timestamp: boolean = false;

    constructor() {
        this.timestamp = true;
    }
}

tsserver警告我

  

timestamp被声明,但是它的值永远不会被读取。

构造函数中的this.timestamp如何不访问该类的同一timestamp变量?

1 个答案:

答案 0 :(得分:0)

这里似乎没有什么问题...

private readonly timestamp: boolean = false;

constructor() {
    this.timestamp = true;
}

双重初始化可能不应该传递一些皮棉标志,但似乎不是您的问题。

您可以尝试一些愚蠢的事情:

  • 将“时间戳”重命名为其他名称

  • npm i

  • 重新启动IDE