我已经在用户登录时使用带有vuex-persistedstate(Cookie)的vuex来存储用户信息。 现在,我需要在用户注销时删除cookie或其中的一部分。
该插件具有“ removeItem”属性,但如何使用此功能或更一般的功能,如何从商店中删除某些东西。
我的代码:
import {Store} from 'vuex'
import createPersistedState from 'vuex-persistedstate'
import * as Cookies from 'js-cookie'
//...
const store = new Store({
state: {
user: {},
apitoken: {},
...
},
plugins: [
createPersistedState({
storage: {
getItem: key => Cookies.get(key),
// Please see https://github.com/js-cookie/js-cookie#json, on how to handle JSON.
setItem: (key, value) =>
Cookies.set(key, value, { expires: 3, secure: true }),
removeItem: key => Cookies.remove(key)
}
})
],
mutations: {
SET_USER(state, user) {
state.user = user;
},
SET_APITOKEN(state, apitoken) {
state.apitoken = apitoken;
},
LOGOUT(state, key) {
//HERE I NEED SOME THING LIKE "removeItem(key)"
state.clean();
},
},
actions: {
logout(context){
context.commit('LOGOUT', 'apitoken');
}
});
谢谢您的帮助!