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

Vuetify 3中v-text-field条件绑定append-icon不显示问题求助

问题原因与解决方案

你的问题出在**append-icon的绑定方式**上:你现在绑定的是字符串'mdiEye'/'mdiEyeOff',但@mdi/js导出的是SVG路径变量,并非Vuetify默认支持的字体图标名称标识,所以无法正确渲染图标。

解决方法:使用append插槽自定义图标

直接利用v-text-field的append插槽,用你已经验证可行的<v-icon>组件来渲染@mdi/js的SVG路径,代码修改如下:

模板部分

<v-text-field
  class="mt-1"
  v-model="key"
  counter
  maxlength="80"
  hide-details="auto"
  variant="outlined"
  readonly
  :type="show1 ? 'text' : 'password'"
>
  <template #append>
    <v-icon @click="show1 = !show1">
      {{ show1 ? mdiEye : mdiEyeOff }}
    </v-icon>
  </template>
</v-text-field>

脚本部分保持不变

<script setup>
import { ref } from 'vue'
import { mdiPlus, mdiMinus, mdiLinkBoxVariantOutline, mdiEye, mdiEyeOff  } from '@mdi/js';

let key = ref("ffffffdddddssss3333333")
let show1 = ref(false)
</script>

这样修改后,点击图标的交互逻辑和你预期的一致,同时能正确显示@mdi/js提供的SVG图标。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 07:34:59