import store from '@/store' import Lockr from 'lockr' import axios from 'axios' const cache = { /** * 载入全部登陆信息 */ loadingCache: function () { if (Lockr.get('shenzhoubb_token') && !axios.defaults.headers['access_token']) { /** 将用户信息放入缓存 */ const userInfo = Lockr.get('loginUserInfo') const userId = Lockr.get('userId') if (userInfo) { store.commit('SET_USERINFO', userInfo) } if (userId) { store.commit('SET_USERID', userId) } } store.commit('SET_APPNAME', Lockr.get('systemName')) store.commit('SET_APPLOGO', Lockr.get('systemLogo')) }, /** * 请求和更新登录缓存 */ updateAxiosCache: function () { axios.defaults.headers['access_token'] = Lockr.get('shenzhoubb_token') return store.dispatch('GetUserInfo') }, updateAxiosHeaders: function (token) { const newToken = token || Lockr.get('shenzhoubb_token') if (token) { Lockr.set('shenzhoubb_token', token) } if (newToken && axios.defaults.headers['access_token'] !== newToken) { axios.defaults.headers['access_token'] = newToken return true // token 变动 } }, /** * 移除登录信息 * @param {*} */ rmAxiosCache: function () { Lockr.rm('shenzhoubb_token') } } export default cache