Vuejs2 Vue在页面刷新后更新值 选择地点 已创建:异步函数(){ 试一试{ let response=等待CommonRequest.getVinces(); 让数组=response.data.viouses; 设i=0; for(让ven为数组){ this.vinces[i]=Object.assign({},this.vinces{ 姓名:ven.name, _id:ven.\U id }); i++; } }捕获(错误){ if(错误)console.log(错误); } }
此处场馆列表id仅在我刷新页面后才会更新。甚至数据也在之前到达(如我使用console.log(this.victions)检查数据是否到达)如中所述,数组元素的直接分配不是被动的Vuejs2 Vue在页面刷新后更新值 选择地点 已创建:异步函数(){ 试一试{ let response=等待CommonRequest.getVinces(); 让数组=response.data.viouses; 设i=0; for(让ven为数组){ this.vinces[i]=Object.assign({},this.vinces{ 姓名:ven.name, _id:ven.\U id }); i++; } }捕获(错误){ if(错误)console.log(错误); } },vuejs2,vue-directives,Vuejs2,Vue Directives,此处场馆列表id仅在我刷新页面后才会更新。甚至数据也在之前到达(如我使用console.log(this.victions)检查数据是否到达)如中所述,数组元素的直接分配不是被动的 <v-layout row wrap> <v-flex class="hidden-sm-and-down" md4> <v-subheader class="fields">Select Venue</v-subheader> </v-flex&
<v-layout row wrap>
<v-flex class="hidden-sm-and-down" md4>
<v-subheader class="fields">Select Venue</v-subheader>
</v-flex>
<v-flex xs12 md8>
<v-select class="select__box" :items="venues" v-model="venue" item-text="name" item-value="_id" label="Select Venue" prepend-icon="edit_location" autocomplete :error-messages="venueErrors" @blur="delayTouch($v.venue,200)" @input="delayTouch($v.venue,200)"></v-select>
</v-flex>
</v-layout>
created: async function() {
try {
let response = await CommonRequest.getVenues();
let array = response.data.venues;
let i = 0;
for (let ven of array) {
this.venues[i] = Object.assign({}, this.venues, {
name: ven.name,
_id: ven._id
});
i++;
}
} catch (error) {
if (error) console.log(error);
}
}
相反,你可以这样做
this.venues[i] = Object.assign({}, this.venues, {
name: ven.name,
_id: ven._id
});
请注意,您的原始代码也缺少
对象的第二个参数中的索引。assign
`created:async function(){try{let response=wait CommonRequest.getviories();let array=response.data.viories;let i=0;for(let ven of array){this.$set(this.vinces,i,Object.assign({},this.vinces[i],{name:ven.name,{id:ven.{u id}));i++;}}catch(error){if(error)console.log(error);}}}仍然不工作我在数据中设置了场地:[]这是滴答问题(vue异步更新DOM)但是如果是这样的话,它不应该在调用更新补丁时自动更新内容吗?
this.$set(this.venues, i, Object.assign({}, this.venues[i], {
name: ven.name,
_id: ven._id
}));