[英]Flutter Provider. How to have multiple instances of the same provider type?
[英]How to create multiple instances of same provider in flutter
如何在屏幕中创建同一提供程序的唯一实例,以便我可以创建 10 个计数器,每个计数器值独立于其他计数器。 有没有办法使用提供者来做到这一点? 如果我增加一个计数器的值,则不应增加其他计数器的值。 Riverpod 中有 (.family) 修饰符来实现我的目标,但我似乎没有看到任何使用提供程序的方法。
据我所知,没有办法用 Provider 轻松地做这样的事情。 Provider 的作者还创建了一个名为 Riverpod 的状态管理/依赖注入包。 Riverpod 有一个名为family
的功能。 使用家庭,您可以通过使用 id 区分它们来创建多个提供程序实例。 id 可以是字符串、数字或不可变对象。
final counterFamily = StateNotifierProvider.family<CounterNotifier, int, int>((ref, id) {
return CounterNotifier();
});
在 ConsumerWidget 中使用 CounterNotifier
final int id;
///
///
ref.watch(counterFamily(id));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.