我是vue 3的新手。我正在尝试为我的项目使用vuetify自动完成功能。我已经查阅了vuetify的官方文档。自动完成显示[对象对象]。提前感谢。
<script>
import { Form, Field } from 'vee-validate';
export default {
components: {
Form,
Field,
},
setup(props) {
},
data() {
return {
add: {
id: 1,
},
states: [
{ name: 'Florida', id: 1 },
{ name: 'Georgia', id: 2 },
{ name: 'Nebraska', id: 3 },
{ name: 'California', id: 4 },
{ name: 'New York', id: 5 },
],
};
},
methods: {
},
};
</script>
<template>
<v-row>
<v-autocomplete
v-model="add.id"
:items="states"
item-text="name"
item-value="id"
chips
deletable-chips
filled
></v-autocomplete>
</v-row>
</template>
如何显示状态名称而不是[object object]
4条答案
按热度按时间1tu0hz3e1#
使用
:items="states.map(x=> x.name)"
你需要使用一个字符串数组。8i9zcol22#
如果你用的是Vuetify3,你应该使用“项目标题”而不是“项目文本”。而且我认为Vuetify2.6与Vue3不兼容。
如果这对你有效,请给予反馈。
amrnrhlw3#
在v中添加
return-object
-自动完成avwztpqn4#
首先,您提到了Vuetify的引用URL错误(或者您使用了错误的版本),因为Vuetify 2与Vue 3不兼容,所以请使用Vuetify 3进行开发。
第二,如果你不想选择多个项目(因为你没有使用
multiple
prop ),那么使用chips
prop 似乎不值得。但是,如果你想使用它,首先修复两个语法错误-closable-chips
代替deletable-chips
(这是Vuetify 2语法)。variant="filled"
代替filled
(这也是Vuetify 2语法)。现在,自动完成显示
object object
的原因是您正在使用属于Vuetify 2的item-text
。相反,您应该使用item-title
,该问题将得到修复。以下是使用
item-text
和item-title
时的输出工作演示-