我试图将项目分配给我的v-select下拉列表,但我不断收到消息no data available
,我有一个对象数组。我正在使用模板插槽,但不确定自己在做什么错。
我已经制作了一个代码笔进行演示:https://codepen.io/anon/pen/LKmZKZ?editors=1011
<div id="app">
<v-app id="inspire">
<v-container>
<v-layout>
<v-flex xs4>
<v-select :items="items" label="people">
<template slot="selection-item" slot-scope="item">
<v-icon :color="item.icon_color">{{item.icon}}</v-icon>
{{item.name}}
</template>
</v-select>
</v-flex>
</v-layout>
</v-container>
</v-app>
</div>
new Vue({
el: '#app',
data() {
return {
items: [
{name: 'Karen', icon : 'search', icon_color: 'red'},
{name: 'Gordon', icon : 'person', icon_color: 'yellow'},
{name: 'Craig', icon : 'opacity', icon_color: 'blue'},
{name: 'Chris', icon : 'pets', icon_color: 'orange'},
]
}
}
})
谢谢你。
答案 0 :(得分:2)
v-select
期望使用字符串数组作为值,但是您绑定了一个填充有对象的数组,这就是为什么看到[object object]
的原因,因此必须添加item-text
属性:
<v-select
:items="items"
name="item"
label="Select a item"
item-text="name"
></v-select>
答案 1 :(得分:0)
你在写
<v-select :ietms="items" label="people">
应该是
<v-select :items="items" label="people">
我从没使用过vuetify,但我在documentacion中发现了这一点,于是我分叉了你的笔: https://codepen.io/christiancazu/pen/mZLWpL
答案 2 :(得分:0)
您缺少项目文本item-text =“ name”,这就是为什么它在下拉菜单中显示[object object]
<div id="app">
<v-app id="inspire">
<v-container>
<v-layout>
<v-flex xs4>
<v-select :items="items" item-text="name" label="people">
<template slot="selection-item" slot-scope="item">
<v-icon :color="item.icon_color">{{item.icon}}</v-icon>
{{item.name}}
</template>
</v-select>
</v-flex>
</v-layout>
</v-container>
</v-app>
</div>
这应该有效