Nuxt验证-为什么不分类组件?

时间:2019-07-29 00:46:07

标签: typescript nuxt

我正在使用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

1 个答案:

答案 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);