我有一个框架,允许以模块化的方式定义类-其中的一部分包括预定义变量,例如v
。
我正在寻找一种可以从班级内部引用v.test
而不是this.v.test
我尝试了代理,但无法确定其来源。
我还尝试了绑定新上下文(但仍然需要this
)
当前课程:
class test extends BaseClass {
constructor(){
this.v = {data: 'test'}
}
getData(){
console.log(v.data) // goal is to equal 'test'
}
}
使用函数的示例:
function test(){
this.v = {data: 'test'}
const v = this.v;
this.getData = function(){
console.log(v.data) // this does equal 'test'
}
}
当前,v在原始上下文中未定义。
我希望能够从类的任何实例中引用this.v,而不必调用this.v
不应按实例共享数据。
答案 0 :(得分:0)
这根本不可能,因为在ECMA类中,不可能声明变量,您可以声明字段,但是只能从this
访问这些内容。