Как сделать эквивалент setTimeout + clearTimeout в Dart?

Я портирую JavaScript на Dart. У меня есть код, который использует window.setTimeout для запуска обратного вызова через некоторое время. В некоторых ситуациях этот обратный вызов отменяется через window.clearTimeout.

что эквивалентно этому в Dart? Я могу использовать new Future.delayed заменить setTimeout, но я не вижу способа, чтобы отменить это. И я не могу найти, куда позвонить clearTimeout от Dart.

1 ответов


можно использовать timer класс

var timer = new Timer(new Duration(seconds: 1), () => print('done'));

timer.cancel();