我刚刚创建了将运行异步功能的按钮。该函数将等待 4 秒并打印。如果我多次单击按钮,它将打印所有点击。我想点击按钮后,删除所有以前的异步功能并保留最后一次点击。这是我的以下代码。
void asyncFunction(){
Timer(Duration(seconds: 4),() async{
print('something');
});
}
那么如何在flutter中完成之前所有的异步功能呢?
每次运行函数时都需要取消之前的运行计时器。将计时器声明为您的状态,作为指向当前异步执行的指针。
Timer _timer;
void asyncFunction() {
_timer?.cancel();
_timer = Timer(
const Duration(seconds: 4),
() => print('something'),
);
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句