如何在Vue中使用directives有关在Vue中使用directives的详细信息,请参阅Vue公式对directives的解释
当前文章主要讲述directives怎么用,directives做权限按钮的功能
###1. directives怎么用###
一个很好的例子。 作为参考,请点击访问
directives 在生命周期内用
exportdefault{data{}{return{};directives : { ' local-test ' : function (El,绑定, vnode ) ) { /** el获取当前dom节点,编译并操作style的所有样式console.log(El.value ),该样式也可以处理事件**//** binding 要检索data-name绑定的值,需要El.dataset才能检索console.log ) vnode.context.$ (获取当前路由信息),components:{ }
directives 在全局main.js中注册
路由配置:
path: '/permission ',component: Layout,name: '权限测试',meta : { BTN permissions 3360 [ ' admin ', “supper //页所需的权限children : [ { path : ' supper ',component : _ import (system/supper ) ],name: '权限属性“supper'] } //页所需的权限},{ path: 'normal ',component : _ import (system/normal ),name: '权限测试页)
import Vue from 'vue'/**权限命令**/consthas=vue.directive('has ),{bind:function(El,binding,vnode ) } vue.prototype.$ _ has (BTN permissions ) ) El.parentnode.removechild ) El; }}; //权限检查方法vue.prototype.$ _ has=function (value ) { let isExist=false; letbtnpermissionsstr=session storage.getitem (BTN permissions ); btnpermissionsstr==undefined|| btnpermissionsstr==null (返回假; } if (value.index of (btnpermissionsstr (-1 ) ) { isExist=true; } return isExist; (; export {has}/*然后在main.js文件中输入文件*.importhasfrom './public/js/BTN permissions.js '; 只要将v-has添加到/*页面的按钮中,*/El-button @ click=' edit click ' type=' primary ' v-has编辑/el-button