Мне не очень комфортно с действием в vuex.
Я не хочу называть в моем компоненте Login действие vuex, которое делает вызов API с помощью топора ios.
Но данные, которые были переданы, поскольку мой компонент не получен в действии ..
Я не знаю, как заставить это работать ..
this.$store.dispatch('REGISTER', {
username: this.username,
email: this.email,
password: this.password
})
.then((response) => {
console.log(response)
this.$router.push('/login')
})
.catch (() => {
this.error = true;
})
и в моем модуле vuex:
import axios from "axios";
export default {
state: {},
mutations: {},
getters: {},
actions: {
REGISTER: ({ username, email, password }) => {
return new Promise((resolve, reject) => {
axios
.post(process.env.VUE_APP_API_URL + "auth/register", {
username: username,
email: email,
password: password
})
.then(({ data, status }) => {
if (status === 201) {
localStorage.setItem('access_token', data.data.token);
resolve(true);
}
})
.catch(error => {
reject(error);
});
});
},
}
};
Благодарю