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

如何给v-select组件的选中选项绑定自定义class?

解决方法

你现在只配置了控制下拉列表选项的option插槽,选中后输入框内的展示内容需要单独配置selected插槽实现样式自定义,按照你的逻辑修改后的代码如下:

<v-select :options="optionList"
          :value="activeQuote ? 'Loading ...' : null !== activeOption && activeOption.label !== 'City' ? null : activeOption"
          :placeholder="Please select a choice"
          :disabled="activeQuote">
    <!-- 下拉列表选项插槽,原有逻辑保留 -->
    <template slot="option" slot-scope="option">
       <div :class="option.active != 0 ? '_inactive' : ''">{{option.label}}</div>
    </template>
    <!-- 新增选中值展示插槽,复用同样的class判断逻辑 -->
    <template slot="selected" slot-scope="option">
       <div :class="option.active != 0 ? '_inactive' : ''">{{option.label}}</div>
    </template>
</v-select>

补充说明

如果你使用的是 Vuetify 3 版本,插槽写法需要调整为 Vue 3 标准的v-slot语法,其他逻辑不变:

<template v-slot:option="{ item: option }">
   <div :class="option.active != 0 ? '_inactive' : ''">{{option.label}}</div>
</template>
<template v-slot:selected="{ item: option }">
   <div :class="option.active != 0 ? '_inactive' : ''">{{option.label}}</div>
</template>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.10 04:06:02