当前位置: 首页 > news >正文

自定义组件可使用的方法

一、关闭操作

methods: {/* 其它方法 ... */// 仅监听下一次点击,如果点在外部就关闭oneClickOutside(e) {const panel = this.$refs.panel;const input = this.$refs['search-input'].$el || this.$refs['search-input'];// 点击在浮窗内部、或搜索框本身,都不关if (!panel || panel.contains(e.target) || input.contains(e.target)) return;this.close();},showWindow(info, defaultSortRule, defaultCondition) {this.$nextTick(() => {this.$refs['search-input']?.focus();this.calcPos();// 关键:只在下一轮事件循环注册一次setTimeout(() => {document.addEventListener('mousedown', this.oneClickOutside, { once: true });}, 0);});},close() {this.visible = false;document.removeEventListener('mousedown', this.oneClickOutside);},/* 其他代码 ... */
}

或者

  handleOutside(e) {if (e.target.className.indexOf("类名") > -1 &&e.target?.parentNode?.parentNode?.nextElementSibling &&e.target.parentNode.parentNode.nextElementSibling.className.indexOf("类名") > -1) {显示隐藏}// 如果点击的不是弹窗本身,就关闭if ((!this.$el.contains(e.target) ||e.target.className.indexOf("类名") == -1) ) {//关闭操作}},

http://www.dtcms.com/a/339711.html

相关文章:

  • 在 Python 中操作 Excel 文件的高效方案 —— Aspose.Cells for Python
  • 《P1550 [USACO08OCT] Watering Hole G》
  • Java开发过程中实用的技术点(一)
  • 【矢量数据】1:250w中国地质图地断层数据/岩性shp数据
  • FlashAttention编译错误
  • Docker 搭建私有镜像仓库
  • 【C++】 C++11 智能指针
  • AI因子模型视角下的本周五鲍威尔演讲:通胀约束与就业压力的政策博弈
  • Spring Cloud系列—Seata分布式事务解决方案AT模式
  • 2025年6月中国电子学会青少年软件编程(图形化)等级考试试卷(一级)答案 + 解析
  • 编译器错误消息: CS0016: 未能写入输出文件“c:\Windows\Microsoft.NET... 拒绝访问
  • Linux管道
  • NVIDIA 优化框架:Jetson 平台 PyTorch 安装指南
  • 初步学习WPF-Prism
  • 图论\dp 两题
  • GIS相关调研
  • Meta首款AR眼镜Hypernova呼之欲出,苹果/微美全息投入显著抢滩市场新增长点!
  • MyBatis-Plus基础篇详解
  • HashMap工作原理
  • 使用Tomcat Clustering和Redis Session Manager实现Session共享
  • 设备树下的LED驱动实验
  • 【机器人】2025年人形机器人时代:伦理迷雾中的人类界限
  • PAT 1072 Gas Station
  • visionpro获取电脑cpu序列号
  • 生信分析自学攻略 | R语言数据类型和数据结构
  • 矿物分类系统开发笔记(二):模型训练[删除空缺行]
  • leetcode2248. 多个数组求交集
  • ES支持哪些数据类型,和MySQL之间的映射关系是怎么样的?
  • Vue3 学习教程,从入门到精通,vue3综合案例:“豪华版”待办事项(41)
  • [Polly智能维护网络] 网络重试原理 | 弹性策略