@amenov
Full-stack developer

Нормальная ли это практика использования Vuex?

Можно ли так использовать Vuex?

export const actions = {
  async signIn(ctx, credentials) {
    await this.$auth.loginWith("local", {
      data: credentials
    });
  },
  async signUp(ctx, user) {
    return await this.$axios.$post("auth/sign-up", user);
  }
};


      this.$store.dispatch("signUp", this.user).then(res => {
        if (res.errors) {
          this.errors = res.errors;
        } else {
          this.$store.dispatch("signIn", {
            email: this.user.email,
            password: this.user.password
          });
        }
        this.loading = false;
      });
  • Вопрос задан
  • 151 просмотр
Пригласить эксперта
Ответы на вопрос 1
@nvdfxx
Senior Pomidor developer
Данные авторизации нужны для роутинга, как минимум, плюс при каждом обращении к серверу вы же токен должны отсылать, который тоже в vuex прекрасно себя чувствует

this.loading нужно не в компоненте делать, а в экшоне, вы же не знаете, как долго запрос на сервер будет обрабатываться, сейчас у вас диспатч и this.loading = false одновременно срабатывают, можно, конечно, и в компоненте, но тогда код усложнится, как по мне
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы