#flutter #riverpod
Вопрос:
Я хотел бы знать разницу между двумя следующими;
ref.watch(fooProvider).value
ВОЗВРАТString?
ref.watch(fooProvider.future)
ВОЗВРАТFuturelt;String?gt;
Разница только в том, что они возвращают?
Я хочу знать, когда использовать. Пожалуйста, приведите мне пример.
ниже приведен пример кода;
final fooProvider = FutureProviderlt;String?gt;((ref) { return Future.delayed(Duration(seconds: 2), () =gt; "foo"); }); final xxx = FutureProviderlt;String?gt;((ref) async { final String? ttt = ref.watch(fooProvider).value; final String? sss = await ref.watch(fooProvider.future); return '$ttt / $sss'; });
Ответ №1:
ссылка.смотреть(fooProvider.future);
Является ли будущаяlt;Строка?gt;
ссылка.часы(fooProvider).значение;
Это струна? так что незачем ждать.