【问题标题】:[Flutter/Riverpod]difference between .future and .value[Flutter/Riverpod].future 和 .value 的区别
【发布时间】:2021-11-17 00:09:43
【问题描述】:

我想知道下面两个的区别;

  • ref.watch(fooProvider).value 返回String?
  • ref.watch(fooProvider.future) 返回Future<String?>

区别仅在于它们返回什么?

我想知道什么时候使用。请举个例子。

下面是示例代码;

final fooProvider = FutureProvider<String?>((ref) {
  return Future.delayed(Duration(seconds: 2), () => "foo");
});

final xxx = FutureProvider<String?>((ref) async {
  final String? ttt = ref.watch(fooProvider).value;
  final String? sss = await ref.watch(fooProvider.future);

  return '$ttt / $sss';
});

【问题讨论】:

    标签: flutter riverpod


    【解决方案1】:

    ref.watch(fooProvider.future);

    是未来

    ref.watch(fooProvider).value;

    是字符串吗?所以不用等待。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-06-01
      • 1970-01-01
      • 2023-03-03
      • 2021-10-27
      • 1970-01-01
      • 2015-10-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多