Vuetify VMenu 保持打开状态:解决日期选择器触发菜单关闭的问题-js教程

本文详解如何在 vuetify 的 `vmenu` 中嵌套 `appdatetimepicker`(基于 vdatepicker)时,防止菜单在点击或选择日期后意外关闭,核心方案是合理使用 `persistent` 与 `no-click-animation` 属性。

在 Vuetify 应用中,将日期/时间选择器(如自定义封装的 AppDateTimePicker)嵌入 VMenu 是常见需求,但默认行为会导致一个典型问题:用户点击日期单元格后,VMenu 立即关闭。这是因为 Vuetify 的 VMenu 默认启用 close-on-content-click(点击菜单内容区域外自动关闭),而日期选择器内部的点击事件可能被冒泡或误判为“菜单外部点击”,尤其在使用第三方封装组件(如 Vuexy 模板中的 AppDateTimePicker)时更为明显。

你可能已尝试过以下常见无效方案:

  • 在日期选择器上添加 @click.stop —— 通常无法阻止 VMenu 内部的事件监听逻辑;
  • 设置 :close-on-content-click=”false” —— 此属性在较新版本 Vuetify(v3.x)中已被移除或不再生效;
  • 使用 :disable-keys=”true” 或 :retain-focus=”true” —— 对点击关闭无实质影响。

✅ 正确解法:启用 persistent 模式

persistent 是 VMenu(以及 VDialog、VTooltip 等)的原生布尔属性,启用后将完全禁用所有自动关闭机制——包括点击遮罩层(scrim)、按 ESC 键、以及点击菜单内容区域外。这正是解决日期选择器干扰问题的关键:

夏夕资源网专注于CMS网站模板,主流语言整站网站源码下载,网站建设相关教程分享,好用的软件素材整合下载,提供一站式便捷自助服务。
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 如遇到加密压缩包,默认解压密码为"zy.lucklyus.top",如遇到无法解压的请联系管理员!
夏夕资源网-网站模板_免费源码_资源素材 » Vuetify VMenu 保持打开状态:解决日期选择器触发菜单关闭的问题-js教程
在线时间:12:00 - 22:00
关注微信公众号:微信公众号
站长邮箱:[email protected]
  • 运营天数: 1393+
  • 资源总数: 47989+
  • 用户总数: 1+
  • 今日更新: 0+
  • 访问次数: 4027719+
  • 本周更新: 0+
  • 最后更新: 2026-03-16

本站指数

×
  • 运营天数: 1393+
  • 资源总数: 47989+
  • 用户总数: 1+
  • 今日更新: 0+
  • 访问次数: 4027719+
  • 本周更新: 0+
  • 最后更新: 2026-03-16