Член 'xxx' неявно имеет тип 'any', который является мутацией в Vuex-классе - PullRequest
0 голосов
/ 21 сентября 2019

Я пытаюсь реализовать хранилище в Vue с помощью машинописного текста y, используя Vuex-class . Для этого написано следующий код, и при создании произошла следующая ошибка. Так как это мутация, она не должна ожидать инициализации,Поправьте меня, если я ошибаюсь и в моем коде.

ERROR in C:/workspace/vue/packages/gui/src/client/services/GetSessionIdService.vue
13:46 Member 'setSessionId' implicitly has an 'any' type.
    11 | })
    12 | export default class GetSessionIdService extends Vue{
  > 13 |     @Mutation(sessionMutations.setSessionId) setSessionId;
       |                                              ^
    14 |     @State(state => state.session.sessionId) sessionId;
    15 |     public $store:any;
    16 |     public async getSessionIdFromService(){

Код:

import {Mutation, State} from 'vuex-class';
import {Component, Vue} from 'vue-property-decorator';
import {sessionModule, sessionMutations} from '../store/session-module';
export default class GetSessionIdService extends Vue{    
    @Mutation(sessionMutations.setSessionId) setSessionId;
    @State(state => state.session.sessionId) sessionId;
}

Мутации:

import {Module, Mutation, VuexModule} from 'vuex-module-decorators';
const namespace = 'session';
const mutationNames = ['setSessionId'];
const sessionMutations = mutationNames.reduce((mutations: any, methodName: string) => {
  const mutationName = `${namespace}/${methodName}`;
  mutations[methodName] = mutationName;
  return mutations;
}, {});

@Module({namespaced: true, name: namespace})
class sessionModule extends VuexModule {
  public sessionId:string='';

  @Mutation setSessionId(sessionId: any) {
    this.sessionId = sessionId;
  } 

}

export {sessionModule, sessionMutations};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...