首页 > 解决方案 > Typescript Vuex - 如何使用 setter 和 getter 定义状态?

问题描述

在 vuex 商店中,我想初始化一个名为 _token 的状态。当我尝试访问同一类中的属性时,它给了我一个错误消息,即未定义 _token 的设置器。任何人都知道为什么只有吸气剂可用?

export default class Api extends VuexModule {
  public _token = '';

  @Action
  public async [VuexActionsApi.VerifyUser](data: any): Promise<IResponseState> {
    const vuexInstance = this;

    // this is not working
    vuexInstance._token = "test";
}

日志输出

标签: javascripttypescriptvue.jsvue-componentvuex

解决方案


如果要使用类装饰器,则必须像这样导入它们(并安装包):

import Action from 'vue-class-component'

尽管我可能会建议不要使用该语法,因为它在 vue3 中已被弃用,请参见此处: https ://github.com/vuejs/rfcs/pull/17#issuecomment-494242121


推荐阅读