首页 > 解决方案 > 无法使用类声明设置值

问题描述

我正在尝试设置值。但是出现错误。请帮我理解

class Y {

    num: number;

    get x() {
        return num;
    }

    set m(i):number {
        this.num = 20;
    }
}
const N = new Y().m(10);
console.log(N.x);

标签: javascripttypescript

解决方案


  • num被添加到类的实例中。你需要this.num从 getter中返回
  • 在设置器中,您总是将其设置为20. 您需要将其设置为i. 这将使用分配的值=
  • 您需要Y在单独的行中创建一个实例。
  • 您不会像调用函数一样调用 setter。将其视为普通属性:

class Y {
  num;

  get x() {
    return this.num;
  }

  set m(i) {
    this.num = i;
  }
}

const N = new Y()
N.m = 10;
console.log(N.x);

请通过setter


推荐阅读