我在构造函数中声明了一个私有属性,并在构造函数中用于检索某个值。我得到了TS6138:声明了'属性'xxxx'但从未使用过。
constructor(private xxxx: Ixxxx) {
this.abc = xxxx.get();
}
我正在升级到typescript 2.4.2。 如果我删除私有,那么错误就会消失。显然,该物业变得公开,我不想要。
答案 0 :(得分:1)
警告是正确的,您引用的是构造函数参数,而不是属性。如果您想进入酒店,您必须:
constructor(private xxxx: Ixxxx) { // xxxx is constructor arg and private property
this.abc = this.xxxx.get();
}
如果您不打算在班级中的任何其他地方使用该属性,您也可以删除private
修饰符并改为使用构造函数参数:
constructor(xxxx: Ixxxx) { // xxxx is constructor arg
this.abc = xxxx.get();
}
这样做不会导致xxxx
成为public
财产。只添加public
关键字即可:
constructor(public xxxx: Ixxxx) { // xxxx is constructor arg and public property
this.abc = this.xxxx.get();
}