首页 > 解决方案 > Riverpod:有人知道在 StreamProvider 中加载 AsyncValue 的模式吗?

问题描述

aStreamProvider问题是在加载的情况下要返回什么。返回的必须是 a Stream,但实际上代码需要等待并且什么都不发送,直到aStreamProvider加载(bc 需要compute_something

final aStreamProvider = StreamProvider((ref) => Stream.empty()); // just an example - imagine something complicated
final bStreamProvider = StreamProvider<int>((ref) {
  final myAsyncValue = ref.watch(aStreamProvider);
  return myAsyncValue.when(data: compute_something,
  loading: what_to_do_here,
  error: (_, __) => throw Exception());
}

谢谢

标签: flutterriverpod

解决方案


你应该 return AsyncValue.loading(),因为在内部流加载时有效,你也是。


推荐阅读