You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Vuexy主题模态框中AppDateTimePicker选日期后关闭问题求助

问题:Vuexy模态框内AppDateTimePicker选择日期后弹窗关闭

使用Vuexy主题开发Vue.js应用时,在模态框中使用AppDateTimePicker组件,点击选择日期后,日期选择器会立即关闭,同时模态框也跟着关闭。组件代码如下:

<AppDateTimePicker
   v-model="delDate"
   :rules="[requiredValidator]"
   label="Delivery Date"
   placeholder="Delivery Date"
   @input="onDateInput"
   persistentPlaceholder
/>

解决方法

1. 阻止日期选择器的事件冒泡

问题根源多是点击日期选项时事件冒泡到模态框外层,触发了模态框的点击关闭逻辑。给AppDateTimePicker添加@click.stop阻止事件冒泡:

<AppDateTimePicker
   v-model="delDate"
   :rules="[requiredValidator]"
   label="Delivery Date"
   placeholder="Delivery Date"
   @input="onDateInput"
   @click.stop
   persistentPlaceholder
/>

2. 调整模态框的关闭触发条件

如果模态框启用了点击外部关闭的功能(Vuexy模态框默认可能带clickToClose属性),可将该属性设为false,仅允许通过关闭按钮关闭:

<AppModal
  :clickToClose="false"
  <!-- 其他模态框属性 -->
>
  <AppDateTimePicker
    <!-- 日期选择器属性 -->
  />
</AppModal>

若需保留点击外部关闭,可给模态框内容容器添加@click.stop,避免点击内部区域触发关闭:

<AppModal>
  <div @click.stop>
    <AppDateTimePicker
      <!-- 日期选择器属性 -->
    />
    <!-- 其他模态框内容 -->
  </div>
</AppModal>

3. 检查onDateInput方法的逻辑

确认onDateInput方法中是否误写了关闭模态框的代码,比如修改了控制模态框显示的变量:

// 排查是否存在这类错误代码
onDateInput() {
  this.modalVisible = false; // 若有则删除或注释
}

4. 启用模态框的persistent属性

Vuexy模态框支持persistent属性,设为true后,点击外部或按ESC都不会关闭模态框,仅能通过关闭按钮操作:

<AppModal
  persistent
  <!-- 其他属性 -->
>
  <AppDateTimePicker
    <!-- 日期选择器属性 -->
  />
</AppModal>

内容的提问来源于stack exchange,提问作者Carlos Rodriguez

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 03:22:35