Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

260
Visualizações
Error While calling vuexAction from class based typescript component-Are you trying to access this.someMutation()or this.someGetter inside an@Action?

I have an auth module as follow:

import { VuexModule, Module, Mutation, Action } from "vuex-module-decorators";
import { LoginDTO, UserInterface } from "./type/auth";

@Module({
  namespaced: true,
  name: "auth",
})
export default class Auth extends VuexModule {
  public token = "";
  private user: UserInterface | null = null;

  @Action
  public login(credentials: LoginDTO): void {
    console.log(credentials);
  }
}

signin.vue
<template>
  <div>
    <h1>signin</h1>
    <form @submit.prevent="submit">
      <input type="text" v-model="username" placeholder="username" />
      <input type="text" v-model="password" placeholder="password" />
      <input type="submit" value="submit" />
    </form>
  </div>
</template>

<script lang="ts">
import { Component, Vue } from "vue-property-decorator";
import { namespace } from "vuex-class";
import { LoginDTO } from "@/store/module/type/auth";

const auth = namespace("auth");

@Component
export default class Signin extends Vue {
  private username = "";
  private password = "";

  private credentials: LoginDTO = {
    username: this.username,
    password: this.password,
  };

  private submit(): void {
    this.login(this.credentials);
  }

  @auth.Action
  public login: (credentials: LoginDTO) => void;
}
</script>

Now, when I call login action from component, on submit of the form, then it throws errors in the console as "Are you trying to access this.someMutation() or this.someGetter inside an @Action?"

index.js?6fc5:281 Uncaught (in promise) Error: ERR_ACTION_ACCESS_UNDEFINED: Are you trying to access this.someMutation() or this.someGetter inside an @Action? That works only in dynamic modules. If not dynamic use this.context.commit("mutationName", payload) and this.context.getters["getterName"]
about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda