Клик - удаления токена - выход юзера
Как удалить токен по клику на кнопку - она будет в хедер(Выйти)
Мой пример создание токена
actions: {
retriewToken(context, credentials) {
return new Promise((resolve, reject) => { //получаем токен по email/pass
axios.post('mobile/login', {
phone: credentials.phone,
code: credentials.code
})
.then(response => {
const token = response.data.result.token //беру токен - ключ
localStorage.setItem('retriewToken', token)
context.commit('retriewToken', token)
resolve(response)
console.log('Data ', response)
})
.catch(e => {
if (e.response.status === 401) {
alert('Невірний логін чи пароль', e)
}
});
})
},
},
мутация
mutations: {
retriewToken(state, token) { // мутация токена
state.token = token
state.isAuth = true
} }
State
state: {
token: token || null }
const
state: {
isAuth: !!token,
token: token || null
Ответы (1 шт):
Автор решения: Максим Вишневский
→ Ссылка
Сделать action, например LOGOUT, повесить его на @click кнопки выход:
Ваш стор:
mutations: {
retriewToken(state, token) {
state.token = token;
state.isAuth = Boolean(token); // приводим значение токена к boolean
},
},
actions: {
LOGOUT({ commit }) {
// какие либо необходимые вам дополнительные действия
commit('retriewToken', null);
},
},
Ваш компонент:
methods: {
...mapActions(['LOGOUT']),
},
Ваш темплейт:
<button @click="LOGOUT">
Выход
</button>