如何在TypeScript中禁用“this”关键字?
有没有办法在类中禁用this关键字的必要性? 下面是一个简单的例子:如何在TypeScript中禁用“this”关键字?,typescript,visual-studio-code,typescript2.0,Typescript,Visual Studio Code,Typescript2.0,有没有办法在类中禁用this关键字的必要性? 下面是一个简单的例子: class counter { public runCounter() { console.log("testconsole"); vartest = 123; // Gives error :( } public vartest: string; } let cter = new counter(); cter.runCounter(); 这导致错误:[ts]找不
class counter {
public runCounter() {
console.log("testconsole");
vartest = 123; // Gives error :(
}
public vartest: string;
}
let cter = new counter();
cter.runCounter();
这导致错误:[ts]找不到名称“vartest”。您是指实例成员“this.vartest”吗
如果没有其他同名变量,是否有方法隐式访问该成员?这在其他语言(如C)中也能正常工作。不,不太好。对不起
您可以改为执行以下操作:
class counter {
public runCounter() {
let _ = this;
console.log("testconsole");
_.vartest = 123; // Gives error :(
}
public vartest: string;
}
但这让它变得更加晦涩而不是简单——我怀疑它在任何情况下都离你想要的更近
我认为最好的建议是,在写打字稿时,习惯于使用打字稿的常见惯例和最佳实践,而不是试图从其他语言中套用你已经习惯的东西
我知道摆脱那些根深蒂固的习惯可能有点尴尬,但是更容易阅读代码、使用这种语言而不是反对这种语言等的回报将非常值得您的努力