如何在此函数中添加暂停,以使“ datasum”的值每2秒更改一次?
i:number; datasum:number; sum:number;
startCalculating(_i,_sum)
{
_i=1; _sum=0;
while(_i<100)
{
_sum=_sum+2;
this.datasum=_sum;
_i=_i+1;
}
}
我已经尝试过建议的方法:pause-in-js,typescript-sleep和async / await-in-ts。任何帮助/建议将不胜感激。
一种解决方案是使用async/await
模式,然后在while
循环中等待Promise
2秒后解决。
像这样:
function delay(timeInMillis: number): Promise<void> {
return new Promise((resolve) => setTimeout(() => resolve(), timeInMillis));
}
class YourClass {
datasum = 0;
async startCalculating(): Promise<void> {
let _i = 0;
let _sum = 0;
while (_i < 100) {
_sum += 2;
this.datasum = _sum;
await delay(2000);
_i += 1;
}
}
}
为了清楚起见,我尝试使代码尽可能与您自己的相似。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句