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

如何禁用v-autocomplete中附加图标点击触发的选项菜单事件

解决v-autocomplete点击清除/附加图标触发菜单展开的问题

要阻止点击清除图标或附加内部图标时弹出选项菜单,核心是阻止图标点击事件向上冒泡,避免触发v-autocomplete的菜单展开逻辑。可以通过Vuetify的事件修饰符直接实现:

具体修改步骤

  • 给@click:append-inner事件添加.stop修饰符,阻止点击附加图标时事件冒泡
  • 给清除图标添加@click:clear.stop事件(即使不需要额外逻辑,也要用.stop阻止冒泡)

修改后的完整代码

<v-autocomplete
  v-for="(header,index) in headers"
  :key="index"
  v-model="header.filtered"
  class="my-5"
  clearable
  chips
  :label="header.title"
  :items="getUniqueList(displayedReviews,header.key)"
  multiple
  density="compact"
  variant="outlined"
  hide-details
  single-line
  flat
  @blur="applyFilters()"
  :append-inner-icon="header.visible ? 'mdi-eye' : 'mdi-eye-off'"
  @click:append-inner.stop="header.visible = !header.visible"
  @click:clear.stop
>
</v-autocomplete>

原理说明

v-autocomplete的菜单展开逻辑绑定在输入框的点击事件上,点击内部图标时,事件会默认向上冒泡到输入框元素,触发菜单展开。使用.stop修饰符可以终止事件传播,让图标点击只执行自身绑定的逻辑,不会触发菜单展开。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 16:32:03