当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。