Open7
Riverpodの難しいところスクラップ
Provider
とNotifier
の使い分け。
自分のイメージはこれ。
より上流のProviderをsubscribeして、変更したものを流す → Provider
より上流のProviderでinitilizeして、状態を流す → Notifier
AutoDisposeかどうか
ConsumerWidget
とConsumerStatefulWidget
、StatefulWidget
の関係。
また、HookWidget
とHookConsumerWidget
の関係。
Consumer
系のWidgetはStatefulWidget
を継承している。
class Consumer extends ConsumerWidget {
abstract class ConsumerWidget extends ConsumerStatefulWidget {
abstract class ConsumerStatefulWidget extends StatefulWidget {
HookConsumer
系のWidgetは、StatefulWidget
の継承になる。
class HookConsumer extends HookConsumerWidget {
abstract class HookConsumerWidget extends ConsumerWidget {
abstract class StatefulHookConsumerWidget extends ConsumerStatefulWidget {
ただ、HookWidget
はStatelessWidget
の継承になっている。
このため、HookWidget
からHookConsumerWidget
にクラスを変えると、StatelessWidget
からStatefulWidget
に変更していることになる。
abstract class HookWidget extends StatelessWidget {