javascript - Vuetify - 如何自定义 <v-select> 中的选项样式?

标签 javascript css vue.js material-design vuetify.js

我正在尝试找到一种方法来自定义 <v-select> 的样式选项。我想提供不同的 backgroundColor取决于期权的值(value)。全部提供:items将是固定的(始终相同),因此我需要找到一种方法来通过其特定文本值或通过声明唯一类/id 来检测选项。最好的方法是什么?谢谢。

当前代码:

<v-select
   :items="[
      'This is yellow option', // Yellow background.
      'This is blue option', // Blue background.
      'This is grey option' // Grey background.
   ]"
>
</v-select>

HERE是指向我想要的结果示例的链接。

.yellow {
  background-color: yellow;
}

.blue {
  background-color: blue;
}

.grey {
  background-color: grey;
}
<select>
  <option>Choose</option>
  <option class="yellow">Yellow Backgrond</option>
  <option class="blue">Blue Background</option>
  <option class="grey">Grey Background</option>
</select>

最佳答案

你可以使用插槽 item如下:

  <v-select :items="items" label="Standard">
            <template #item="{item}">
              <span :class="[{'yellow':item.includes('yellow')},
                    {'blue':item.includes('blue')},{'grey':item.includes('grey')}]"> 
                      {{item}}</span>
           </template>

  </v-select>
new Vue({
  el: '#app',
  vuetify: new Vuetify(),
  data: () => ({
    items:[ 'This is yellow option', // Yellow background.
      'This is blue option', // Blue background.
      'This is grey option' // Grey background.,
    ]
  }),
})

LIVE DEMO

关于javascript - Vuetify - 如何自定义 <v-select> 中的选项样式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64900585/

相关文章:

Javascript if 语句忽略 jQuery $(this)

javascript - Nodejs Angularjs Mongoose Internet Explorer 11 兼容性

vue.js - 通过VueJS设置输入值并混合值的内容

javascript - Vue - 删除生产模式的特定 JavaScript 文件

javascript - 是否可以在 javascript 中按键时重新加载页面(无需聚焦页面)?

javascript - 将 Javascript 变量值分配给 HTML href 和函数

javascript - CSS/jQuery 改进的页面流

javascript - 禁用 iPhone "save image"弹出窗口

css - firefox css3在溢出隐藏元素消失的元素上进行翻译

javascript - 使用vue.js组件统计数据值