Jadi saya punya contoh konyol seperti ini

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();
  }
}

Saya perlu meneruskan boolean dari MyPage widget ke UserProvider saya. tapi saya bingung bagaimana membangunnya karena saya memiliki kesalahan seperti ini

enter image description here

Saya menggunakan: flutter_riverpod: ^0.14.0+3

0
Alexa289 26 Mei 2021, 10:27

1 menjawab

Jawaban Terbaik

Anda perlu membuat argumen tipe Anda cocok dengan parameter.

Pertama, Anda menentukan kelas yang disediakan, lalu jenis yang Anda lewati family.

final userProvider = ChangeNotifierProvider.autoDispose.family<UserProvider, bool>((ref, isFemale) {
  return UserProvider(isFemale);
});
0
Alex Hartford 26 Mei 2021, 14:30