我想知道该类存在什么用例FutureProvider
?
我对如何加载异步函数特别感兴趣,比如Future<Contact> getAllContacts() async { ... }
当 ui 是用 a或类似的东西构建FutureProvider
时。ChangeNotifierProvider
此外,每次notifyListeners()
调用时,我都希望该提供程序通过异步调用重建 ui。提供者是否可以这样做,或者我错过了什么?
我想知道该类存在什么用例FutureProvider
?
我对如何加载异步函数特别感兴趣,比如Future<Contact> getAllContacts() async { ... }
当 ui 是用 a或类似的东西构建FutureProvider
时。ChangeNotifierProvider
此外,每次notifyListeners()
调用时,我都希望该提供程序通过异步调用重建 ui。提供者是否可以这样做,或者我错过了什么?
FutureProvider
没有内置更新机制——但可以与Consumer
可变对象(ChangeNotifer
或State
)结合来处理更新。
它有两个主要用途:
FutureProvider<MyConfig>(
builder: (_) async {
final json = await // TODO load json from something;
return MyConfig.fromJson(json);
}
)
ChangeNotifier
)结合起来,将 a 转换Future
成更容易操作的东西:ChangeNotifierProvider(
builder: (_) => Foo(),
child: Consumer<Foo>(
builder: (_, foo, __) {
return FutureProvider.value(
value: foo.someFuture,
child: ...,
);
},
),
);