mirror of
https://github.com/iczer/vue-antd-admin
synced 2025-04-26 11:36:48 +08:00
79 lines
2.2 KiB
JavaScript
79 lines
2.2 KiB
JavaScript
import {getLocalStorage, setLocalStorage} from '@/utils/cache'
|
|
|
|
export default {
|
|
namespaced: true,
|
|
state: {
|
|
user: undefined,
|
|
permissions: null,
|
|
roles: null,
|
|
routesConfig: null
|
|
},
|
|
getters: {
|
|
user: state => {
|
|
if (!state.user) {
|
|
try {
|
|
const user = getLocalStorage(process.env.VUE_APP_USER_KEY)
|
|
state.user = JSON.parse(user)
|
|
} catch (e) {
|
|
console.error(e)
|
|
}
|
|
}
|
|
return state.user
|
|
},
|
|
permissions: state => {
|
|
if (!state.permissions) {
|
|
try {
|
|
const permissions = getLocalStorage(process.env.VUE_APP_PERMISSIONS_KEY)
|
|
state.permissions = JSON.parse(permissions)
|
|
state.permissions = state.permissions ? state.permissions : []
|
|
} catch (e) {
|
|
console.error(e.message)
|
|
}
|
|
}
|
|
return state.permissions
|
|
},
|
|
roles: state => {
|
|
if (!state.roles) {
|
|
try {
|
|
const roles = getLocalStorage(process.env.VUE_APP_ROLES_KEY)
|
|
state.roles = JSON.parse(roles)
|
|
state.roles = state.roles ? state.roles : []
|
|
} catch (e) {
|
|
console.error(e.message)
|
|
}
|
|
}
|
|
return state.roles
|
|
},
|
|
routesConfig: state => {
|
|
if (!state.routesConfig) {
|
|
try {
|
|
const routesConfig = getLocalStorage(process.env.VUE_APP_ROUTES_KEY)
|
|
state.routesConfig = JSON.parse(routesConfig)
|
|
state.routesConfig = state.routesConfig ? state.routesConfig : []
|
|
} catch (e) {
|
|
console.error(e.message)
|
|
}
|
|
}
|
|
return state.routesConfig
|
|
}
|
|
},
|
|
mutations: {
|
|
setUser (state, user) {
|
|
state.user = user
|
|
setLocalStorage(process.env.VUE_APP_USER_KEY, JSON.stringify(user))
|
|
},
|
|
setPermissions(state, permissions) {
|
|
state.permissions = permissions
|
|
setLocalStorage(process.env.VUE_APP_PERMISSIONS_KEY, JSON.stringify(permissions))
|
|
},
|
|
setRoles(state, roles) {
|
|
state.roles = roles
|
|
setLocalStorage(process.env.VUE_APP_ROLES_KEY, JSON.stringify(roles))
|
|
},
|
|
setRoutesConfig(state, routesConfig) {
|
|
state.routesConfig = routesConfig
|
|
setLocalStorage(process.env.VUE_APP_ROUTES_KEY, JSON.stringify(routesConfig))
|
|
}
|
|
}
|
|
}
|