自定义指令: 权限指令
// v-allow 指令, 值与路由meta字段对比, 绑定的内容显示与否
Vue.directive('allow', {
inserted: (el, binding, vnode) => {
let permissionList = vnode.context.$route.meta.permission
if(!permissionList.includes(binding.value)){
el.parentNode.removeChild(el)
}
}
})
// 使用
<a @click="upload" v-allow="'3'"></a> /* 3代表一个上传权限的ID,权限中有3则显示按钮 */