vue js不会在方法调用的中间更新DOM

时间:2019-12-17 10:51:32

标签: vuejs2 reactive

我有一种方法可以重塑从axios请求中提取的数据。根据数据量的不同,重整过程可能要花费一分钟的时间:我正在将记录从C20K对象数组中拉入嵌套结构,在该嵌套结构中,使用array.forEach的组合将值分为8组,每组3个在容器对象内()和array.find()。我想更新DOM,以显示我们在forEach函数内部进行的处理有多远,但是直到方法完成后,我才能重新渲染DOM。我尝试使用app.nextTick(),但是对我来说不起作用-我不太了解它的上下文。 将其应用到我的Vue实例的名称

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中的更改做出反应

我以错误的方式处理此问题吗?我真正想做的就是让用户知道该应用程序仍在正常运行,而没有挂起。

0 个答案:

没有答案