動態更新進度條時,沒有更新的過程,直接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也是無效的。就先用上面的方式了。

咻咻~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章