Added user data loader
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
2020-12-06 03:55:59 +01:00
parent f7b5dc41ca
commit 02af4b667e
4 changed files with 64 additions and 17 deletions

View File

@@ -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: {},