Cześć, w mojej apce pisanej we Vue wykorzystuję Vuex, m.in. do logowania, w komponencie mam:
data() {
return {
test: false,
}
},
methods() {
login() {
if(this.password.length >= 6 && this.username.length >= 5) {
const userObj = {
username: this.username,
password: this.password
};
console.log(userObj);
this.$store.dispatch('login',{ username: userObj.username, password: userObj.password })
} else {
alert('Password or username is too short')
this.password = '';
}
//console.log(userObj)
},
}
vuex:
login({commit}, authData) {
axios.post('/login', {
username: authData.username,
password: authData.password
})
.then(resp => {
console.log(resp);
localStorage.setItem('token', resp.data.authToken);
localStorage.setItem('userId', resp.data.id);
localStorage.setItem('user', resp.data);
commit('storeUser', resp.data);
router.replace('/dashboard');
})
.catch(e => {
console.log(e);
alert('Something went wrong, try again')
});
},
Chciałbym z vuexa, w axios w metodzie .then(), zmienić wartość test na true w komponencie, jednak nie wiem jak to rozegrać. Ktoś pomoże?