问题描述
所以我有这样愚蠢的例子
class UserProvider with ChangeNotifier {
bool isFemale;
UserProvider(this.isFemale);
}
// I am confused when creating this userProvider below
final userProvider = ChangeNotifierProvider.autodispose.family<bool><UserProvider((ref,isFemale) {
return UserProvider(isFemale);
});
class MyPage extends ConsumerWidget {
@override
Widget build(context,watch) {
final provider = watch(userProvider(false)); // <--- need to pass a bool from here
return Container();
}
}
我需要将一个布尔值从 MyPage
小部件传递给我的 UserProvider
。但我很困惑如何构建它,因为我有这样的错误
我正在使用:Flutter_riverpod:^0.14.0+3
解决方法
您需要使类型参数与参数匹配。
首先,指定提供的类,然后指定传递的类型 family
。
final userProvider = ChangeNotifierProvider.autoDispose.family<UserProvider,bool>((ref,isFemale) {
return UserProvider(isFemale);
});