我正在使用Nuxt 2.8.1和打字稿3.4。当我创建一个组件时, 为该组件定义“验证”,我无法访问在类中定义的es6属性:
@Component
class Foo extends Vue {
get foo (): boolean { return true }
validate () {
return this.foo // returns undefined?
}
}
[NB:验证未通过Vue实例。至少,如果用于验证的this
实际上不是Foo
实例,则工具应该出错。]
我应该如何访问foo
?
答案 0 :(得分:0)
我不确定100%是否是您要的内容,但似乎您使用了错误的get
关键字。我附了一个小例子,说明我通常如何使用get和set关键字。我认为这个例子足以指导您。
class Person{
private _name:string;
private _occupation:string;
constructor(name:string, occupation:string){
this._name = name;
this._occupation = occupation
}
get occupation(){
return this._occupation;
}
set occupation(occup:string){
// do some grammar and spelling checking here too???
this._occupation = occup;
}
}
let Obama = new Person('Obama', 'President');
console.log(Obama.occupation);
// console.log(Obama._name) error
Obama.occupation = 'Chilling';
console.log(Obama.occupation);