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

如何在Vuetify的v-select下拉框中自定义item-title显示文本?

解决Vuetify v-select自定义item-title的问题

针对你的需求,有两种简单可行的方案:

方案一:使用item插槽自定义显示(推荐)

Vuetify的v-select支持通过item插槽直接自定义下拉项的内容,不需要修改原有数据源,灵活性更高。你可以在插槽里根据resource字段的值动态渲染文本:

<v-select 
    label="Select a permission to copy"
    variant="underlined"
    no-data-text="No permission to choose from"
    :items="permissionsToCopy"
    v-model="selectedPermissionToCopy"
    return-object
>
  <!-- 自定义下拉项的显示内容 -->
  <template v-slot:item="{ item }">
    <span v-if="item.resource === 'company_user_licence'">
      Licence Permission: User
    </span>
    <span v-else>
      {{ item.resource }} <!-- 其他情况显示原resource字段值,可根据需求修改 -->
    </span>
  </template>
  <!-- 如果需要自定义选中后的顶部显示文本,可添加selection插槽 -->
  <template v-slot:selection="{ item }">
    <span v-if="item.resource === 'company_user_licence'">
      Licence Permission: User
    </span>
    <span v-else>
      {{ item.resource }}
    </span>
  </template>
</v-select>

方案二:转换数据源

如果你更倾向于通过修改数据源来实现,可以创建一个计算属性,为每个数据项添加自定义的标题字段,再绑定到item-title:

<template>
  <v-select 
      label="Select a permission to copy"
      variant="underlined"
      item-title="customTitle"
      no-data-text="No permission to choose from"
      :items="transformedPermissions"
      v-model="selectedPermissionToCopy"
      return-object
  >
  </v-select>
</template>

<script setup>
import { computed } from 'vue'

// 假设你的permissionsToCopy是响应式数据源
const permissionsToCopy = /* 你的原始数据 */

// 转换数据源,添加自定义标题字段
const transformedPermissions = computed(() => {
  return permissionsToCopy.map(item => {
    return {
      ...item,
      customTitle: item.resource === 'company_user_licence' 
        ? 'Licence Permission: User' 
        : item.resource // 其他情况保留原resource值,可按需修改
    }
  })
})

const selectedPermissionToCopy = /* 你的绑定变量 */
</script>

两种方案都能满足需求:方案一无需改动数据,适合需要动态调整显示规则的场景;方案二更直观,适合固定显示逻辑的场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 06:22:45