Vuejs2 vue js不';在方法调用中间更新DOM
我有一种方法可以重塑从axios请求中提取的数据。根据数据量的不同,重塑可能需要一分钟的时间:我正在使用array.forEach()和array.find()的组合将记录从C20K对象数组拖到嵌套结构中,其中值在容器对象中以8组3为一组。我想更新DOM以显示我们在forEach函数中的处理过程有多远,但在方法完成之前,我无法让DOM重新渲染。我尝试过使用app.nextTick(),但它对我不起作用-我不太理解它的上下文。 将其应用于我的Vue实例的名称Vuejs2 vue js不';在方法调用中间更新DOM,vuejs2,reactive,Vuejs2,Reactive,我有一种方法可以重塑从axios请求中提取的数据。根据数据量的不同,重塑可能需要一分钟的时间:我正在使用array.forEach()和array.find()的组合将记录从C20K对象数组拖到嵌套结构中,其中值在容器对象中以8组3为一组。我想更新DOM以显示我们在forEach函数中的处理过程有多远,但在方法完成之前,我无法让DOM重新渲染。我尝试过使用app.nextTick(),但它对我不起作用-我不太理解它的上下文。 将其应用于我的Vue实例的名称 methods:{ myMetho
methods:{
myMethod:{
let i_counter = 0;
this.price_groups.forEach(pg=>{
i_counter = i_counter+1;
this.state.preparingDataMessage = "Processing " + i_counter + " of " + this.price_groups.length;
this.$nextTick(()=>{
app.state.preparingDataMessage = "Processing " + i_counter + " of " + app.price_groups.length;
});
console.log(this.state.preparingDataMessage );
})
}
}
console.log()实时显示正确,但在方法完成之前,DOM不会对this.state.preparingDataMessage中的更改做出反应
我是不是走错了路?我真正想做的就是让用户知道应用程序仍在正常工作。这是因为VueJS在批处理虚拟DOM更新之前等待整个操作完成,这样它就不会在不需要时不必要地更新实际DOM,因为这是一个昂贵的操作。