一、原因
想在标签上实现右键菜单,结果naive-ui的tags不支持这个操作。本来用的是自己写的div标签,这样可以响应右键菜单,昨晚突然想到可以用指令来实现,于是自定义了这个指令
二、代码
import type {App} from "vue"export const youjianzhuce = (app:App)=>{const chuli=(el:any,binding:any)=>{const {value} = bindingvalue && value(el)}console.log("注册指令")app.directive('youjian', {mounted: function (el:any, binding:any, ) {el.addEventListener("contextmenu",(e: any)=>{console.log(e,'右键点击,指令处')chuli(e,binding)})},unmounted: function (el:any, binding:any,) {el.removeEventListener("contextmenu",(e: any)=>{console.log(e,'右键点击,指令处')chuli(e,binding)})}})}
三、使用
youjianzhuce(app)即可注册
<组件 v-youjian="函数"></组件>
函数的第一个参数是事件