// 自定义全局指令- 权限控制
import permission from './utils/permission'
Vue.directive('permission', permission)
permission.js文件内容
import { getUserInfo } from '@/utils/auth'
const allPermission = '*:*:*'
export function checkPermission(value) {
const userInfo = getUserInfo() || ''
const permissions = userInfo ? userInfo.permissions : []
if (value && value instanceof Array && value.length > 0) {
const permissionFlag = value
const hasPermissions = permissions.some(permission => allPermission === permission || permissionFlag.includes(permission))
if (!hasPermissions) {
return false
}
return true
}
throw new Error('请设置操作权限标签值')
}
export default {
inserted(el, binding) {
const { value } = binding
if (!checkPermission(value)) {
console.log(el)
el.parentNode && el.parentNode.removeChild(el)
}
}
}
编译h5正常,编译到app。权限指令不生效。
1 个回复
CODE_XU
app 端是无法获取 dom el 的