‘首次‘
This commit is contained in:
@@ -0,0 +1,71 @@
|
||||
// 权限信息仓库
|
||||
export default {
|
||||
state: {
|
||||
authList:[],
|
||||
menuArr:[] //菜单
|
||||
},
|
||||
getters: {
|
||||
// 检查菜单是否存在
|
||||
getAuth:(state) => {
|
||||
return function (key) {
|
||||
let arr = state.authList.filter(item => item.name == key)
|
||||
return arr.length == 0 ? false : true
|
||||
}
|
||||
},
|
||||
// 返回菜单名
|
||||
getAuthName:(state) => {
|
||||
return function (key) {
|
||||
let arr = state.authList.filter(item => item.name == key)
|
||||
return arr.length == 0 ? '' : arr[0].label
|
||||
}
|
||||
},
|
||||
// 返回用户是否拥有该按钮权限
|
||||
getOperation(state){
|
||||
return function(key){
|
||||
let curRoute = '/' + this.$mp.page.route;
|
||||
let arr = state.authList.filter(item => (curRoute.indexOf(item.name) != -1 || item.name.indexOf(curRoute) != -1))
|
||||
let operation = arr[0] ? arr[0].operation : []
|
||||
return operation.indexOf(key) > -1 ? true : false
|
||||
}
|
||||
},
|
||||
// 获取菜单
|
||||
getMenu(state){
|
||||
return function(key){
|
||||
let arr = state.menuArr.filter(item => item.url == key)
|
||||
return arr.length ? arr[0].children : []
|
||||
}
|
||||
}
|
||||
},
|
||||
mutations: {
|
||||
// 设置权限信息
|
||||
'SETAUTH':function(state, payload){
|
||||
state.authList = payload
|
||||
},
|
||||
// 清除权限信息
|
||||
'CLEARAUTH':function(state){
|
||||
state.authList = []
|
||||
},
|
||||
// 设置菜单信息
|
||||
'SETMENU':function(state, payload){
|
||||
state.menuArr = payload
|
||||
},
|
||||
// 清除菜单信息
|
||||
'CLEARMENU':function(state){
|
||||
state.menuArr = []
|
||||
},
|
||||
},
|
||||
actions: {
|
||||
setAuth({ commit },payload){
|
||||
commit('SETAUTH',payload)
|
||||
},
|
||||
clearAuth({ commit }){
|
||||
commit('CLEARAUTH')
|
||||
},
|
||||
setMenu({ commit },payload){
|
||||
commit('SETMENU',payload)
|
||||
},
|
||||
clearMenu({ commit }){
|
||||
commit('CLEARMENU')
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user