动态更新进度条时,没有更新的过程,直接100%

最近有个后端同事在写更新进度条遇到了一个问题,进度条马不停蹄,直奔100%!!!!,这让我来了兴趣!

他的代码大致如下:

var todo=0;
var progressNumber=0;//进度条
do{
	ajax(){//ajax已经设置为同步
	   更新progressNumber
	}
}while(progressNumber<100)

初看是没得问题。但是效果就是直接奔到100了。
后就没用do while ,for等循环去ajax,直接使用setInterval去请求

var interval=null;
interval=setInterval(() => {
     ajax(){
       //正常更新progressNumber;
       //不过当progressNumber 100时,清掉计时器
       if(progressNumber >100){
           clearInterval(interval)
       }
	}
 }, 300);

说来惭愧,并没有找到原因在哪里,一开始以为是vue dom 更新渲染的问题,使用了setTimeout ,nextTIck,等都没有效果,后直接使用jq去更新dom也是无效的。就先用上面的方式了。

咻咻~

你可能感兴趣的:(JavaScript,Vue)