簡體   English   中英

定時器后飛鏢/顫振產量 state

[英]Dart/Flutter Yield state after timer

我正在使用flutter_bloc ,但我不確定如何從回調中產生 state。 我正在嘗試啟動計時器並在暫停后返回一個新的 state。 我使用計時器的原因是為了能夠取消前一個計時器,因此它總是在空閑 state 之后返回一個新的 state。

@override
  Stream<VerseState> mapEventToState(
    VerseEvent event,
  ) async* {
if (event is ABCEvent) {
Timer(const Duration(seconds: 3), () {
        print("Here");
        _onTimerEnd(); // adding yield here returns an error.
      })
}

Stream<XYZState> _onTimerEnd() async* {
    print("Yielding a state");
    yield myNewState();
  }

我可以看到代碼正在進入計時器回調,因為我可以在回調中看到打印語句,但在timerEnd()方法中看不到。

State 應該由您當前正在處理的 bloc 中使用的 stream 產生。 喜歡

mapEventToState

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM