本文总结了vue3下ClickOutside的实现逻辑,从工具函数封装,到自定义指令的学习,再到源码的深入学习;虽然ClickOutside的整体逻辑并不是很复杂,但是刚开始笔者阅读源码的时候,很难理解其中的一些用法;尤其是在事件的注册,为什么不用click,而是使用mouseup/mousedown两个事件组合;经过深入的思考和对比,才慢慢理解作者的用意。
方案一 使用vueuse提供的onClickOutside函数 如下代码: <template>你好啊</template>import{onClickOutside}from'@vueuse/core'import{ref}from"vue";consttarget=ref(null)onClickOutside(target,(event)=>{console.log('点击外部区域',event)}) 官方文档地址: https://vueuse.org/core/onClickOutside/v...
在Vue 3中,自定义一个clickoutside指令可以帮助你在点击元素外部时触发某些操作,比如关闭下拉菜单或模态框。下面是一个详细的步骤和代码示例来实现这个自定义指令。 步骤一:创建自定义指令 首先,你需要创建一个自定义指令。你可以在Vue项目的src/directives目录下创建一个新的文件,比如clickOutside.js。 javascript im...
在Vue2中使用v-click-outside,通常需要借助第三方插件或手动编写指令。虽然能够实现相应功能,但在代码编写和维护方面存在一定的不便。 四、Vue3中v-click-outside的写法 在Vue3中,v-click-outside指令已经成为了Vue.js冠方提供的一个内置指令,使用起来更加方便和简洁。 4.1 安装v-click-outside插件 在Vue3项目...
vue3 自定义指令 v-click-outside exportdefaultfunctionregisterDirectives(app: App) { app.directive('click-outside', {mounted(el:any, bindings:any) { el.handler=function(e:any) {if(!el.contains(e.target)) { bindings.value(e) } }document.addEventListener('click', el.handler,true)...
本文应该是全网最深入的对自定义指令ClickOutside的解读,文章内容较长,觉得有所收获的记得点赞关注收藏,一键三连。 工具函数 首先是on和off函数,在naive-ui-admin中用来给函数注册绑定和解除绑定事件 export function on( element: Element | HTMLElement | Document | Window, event: string, handler: EventListene...
$ npm install --save click-outside-vue3 $ yarn add click-outside-vue3 Use import{createApp}from"vue"importAppfrom"./App.vue"importvClickOutsidefrom"click-outside-vue3"constapp=createApp(App)app.use(vClickOutside) export default{data(){vcoConfig:{handler:this.handler,middleware:this.midd...
npm install --save @mahdikhashan/vue3-click-outside How to use add the custom directive to you component <template>BOXOutside of the box</template>importclickOutSidefrom"@mahdikhashan/vue3-click-outside";exportdefault{name:"Box",directives:{clickOutSide,},props:{msg:String,},methods:{cus...
1、从elemtn-plus中导入ClickOutside指令 import { ClickOutside as vClickOutside } from 'element-plus' 2、从元素上绑定对应的指令 v-click-outside= "onClickOutside" 3、onClickOutside绑定对应的方法 vue2.0 1、导入指令 import { ClickOutside } from 'element-plus' ...
Vue3 自定义指令 ClickOutside 的实现深入理解如下:基础工具函数:on 和 off 函数:这两个函数用于事件绑定和解除,是处理事件的基础工具。它们提供了简洁的事件管理方式,如利用组合实现一次性事件处理等。自定义指令的生命周期:Vue 提供了多种内置指令,而自定义指令可以扩展功能以满足特定业务需求。自...