建一个 permission.js
export default {
inserted(el, binding, vnode) {
const { value } = binding;
const list = [1,2,3,4,5,6];
if (value) {
const hasPermission = list.some(item => {
return item == value;
});
if (!hasPermission) {
el.parentNode && el.parentNode.removeChild(el);
}
} else {
throw new Error(`need single url! `);
}
}
};
同目录下在建一个index.js
import permission from "./permission";
const directives = {
permission
}
export default {
install(Vue){
Object.keys(directives).forEach(key=>{
Vue.directive(key,directives[key])
})
}
}
然后在main.js里面引入
import Directives from "./directive/index.js"
Vue.use(Directives)
页面使用
<div v-permission="1">测试</div>
文章介绍了一个在Vue项目中实现权限控制的方法,通过创建`permission.js`和`index.js`文件定义自定义指令,用于根据用户权限决定是否显示元素。在`main.js`中全局注册该指令,并在页面上使用`v-permission`来判断元素是否显示。
959

被折叠的 条评论
为什么被折叠?



