Javascript 在Vue中以编程方式更改自动完成选定项
我在Vue方面没有进步,假设我们有:Javascript 在Vue中以编程方式更改自动完成选定项,javascript,vue.js,vue-component,vuetify.js,Javascript,Vue.js,Vue Component,Vuetify.js,我在Vue方面没有进步,假设我们有: <v-autocomplete v-model="defaultUser" :hint="`User: ${defaultUser.username}`" :items="users" :item-text="item =>`${item.firstName} - ${item.lastName}`" item-valu
<v-autocomplete v-model="defaultUser"
:hint="`User: ${defaultUser.username}`"
:items="users"
:item-text="item =>`${item.firstName} - ${item.lastName}`"
item-value="userId"
label="Related user"
persistent-hint
return-object
dense
single-line outlined
:filter="userFilter"></v-autocomplete>
通过以下截取的代码,UI中未发生任何事情,换句话说,我想通过代码更改所选项目,但未发生任何事情:
axios.get('api/user/relatedusers')
.then(response => {
if (response.status === 200 && response.data.id !== 0) {
this.defaultUser.userId = response.data.relatedId;//Here is nothing happened
}
}).catch(err => {
});
为什么如果每个变量都在Vue控制下,这不起作用,我的意思是绑定和可观察。您似乎应该通过id找到一个用户,然后将其分配给该用户。defaultUser:
this.defaultUser = this.users.find(x => x.userId === response.data.relatedId)
“不起作用”是什么意思?怎么说?您确定这行代码正在执行吗?您所做的只是更改defaultUser
的用户ID,而不是更改整个defaultUser
对象;这可能解释了为什么自动完成组件没有正确更新。
this.defaultUser = this.users.find(x => x.userId === response.data.relatedId)