Added user data loader
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
@@ -31,6 +31,7 @@ export default {
|
||||
state.name = '';
|
||||
},
|
||||
logout(state) {
|
||||
state.processing = false;
|
||||
state.token = '';
|
||||
state.name = '';
|
||||
}
|
||||
@@ -38,7 +39,7 @@ export default {
|
||||
actions: {
|
||||
performLogin({commit}, creds) {
|
||||
return new Promise((resolve, reject) => {
|
||||
commit('auth_started')
|
||||
commit('auth_started');
|
||||
axios.post("auth/login", creds, {baseURL}).then(resp => {
|
||||
const token = resp.data.token;
|
||||
|
||||
@@ -46,12 +47,12 @@ export default {
|
||||
return reject();
|
||||
}
|
||||
|
||||
localStorage.setItem(JWT_KEY_NAME, token)
|
||||
commit('auth_success', {token, name: creds.name})
|
||||
localStorage.setItem(JWT_KEY_NAME, token);
|
||||
commit('auth_success', {token, name: creds.name});
|
||||
return resolve(resp);
|
||||
}).catch(err => {
|
||||
commit('auth_fail')
|
||||
localStorage.removeItem(JWT_KEY_NAME)
|
||||
commit('auth_fail');
|
||||
localStorage.removeItem(JWT_KEY_NAME);
|
||||
return reject(err);
|
||||
})
|
||||
})
|
||||
@@ -66,13 +67,12 @@ export default {
|
||||
return reject();
|
||||
}
|
||||
|
||||
|
||||
localStorage.setItem(JWT_KEY_NAME, token)
|
||||
commit('auth_success', {token, name: creds.name})
|
||||
localStorage.setItem(JWT_KEY_NAME, token);
|
||||
commit('auth_success', {token, name: creds.name});
|
||||
resolve(resp)
|
||||
}).catch(err => {
|
||||
commit('auth_fail')
|
||||
localStorage.removeItem(JWT_KEY_NAME)
|
||||
commit('auth_fail');
|
||||
localStorage.removeItem(JWT_KEY_NAME);
|
||||
reject(err)
|
||||
})
|
||||
})
|
||||
@@ -83,6 +83,27 @@ export default {
|
||||
commit('logout')
|
||||
resolve();
|
||||
});
|
||||
},
|
||||
loadUserData({commit, state}) {
|
||||
return new Promise((resolve, reject) => {
|
||||
if (state.token && !state.name) {
|
||||
commit('auth_started');
|
||||
axios.get('auth/me', {
|
||||
baseURL,
|
||||
headers: {"Authorization": "Bearer " + state.token}
|
||||
}).then((data) => {
|
||||
commit("auth_success", {
|
||||
token: state.token,
|
||||
name: data.data.name
|
||||
});
|
||||
return resolve();
|
||||
}).catch(() => {
|
||||
commit("auth_fail");
|
||||
localStorage.removeItem(JWT_KEY_NAME);
|
||||
return reject();
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
modules: {},
|
||||
|
||||
Reference in New Issue
Block a user