當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Dart Stream.error用法及代碼示例


dart:async 庫中Stream.error 的用法介紹如下。

用法:

@Since("2.5")   

Stream<T>.error(
   Object error,    
   [StackTrace? stackTrace]   
)

創建一個在完成之前發出單個錯誤事件的流。

此流發出 errorstackTrace 的單個錯誤事件,然後以 done 事件結束。

例子:

Future<void> tryThings(Stream<int> data) async {
  try {
    await for (var x in data) {
      print('Data: $x');
    }
  } catch (e) {
    print(e);
  }
}
tryThings(Stream<int>.error('Error')); // prints "Error".

返回的流實際上等效於由 Future<T>.error(error, stackTrace).asStream()(() async* { throw error; } ()) 創建的流,除了您還可以控製堆棧跟蹤。

相關用法


注:本文由純淨天空篩選整理自dart.dev大神的英文原創作品 Stream<T>.error constructor。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。