🙌
riverpod公式で学んだこと ーStateProvider編
はじめに
前回記事の続きです
前回はProviderについてまとめました。今回はStateProviderについてです。
riverpod 公式(https://riverpod.dev/docs/providers/state_provider)
StateProvider
StateNotifierProviderの簡略版とのこと
以下のようなデータを扱う際に使用する
- enum型 (絞り込み条件)
- String型 (テキストフィールド)
- bool型 (チェックボックス)
- 数値 (ページ遷移、年齢)
StateProviderは簡単なデータを扱う際に用いる。データを簡単に保存することができるが、その分重要なデータは任せられないプロバイダー。
watchで状態の変化を監視し、readで良くも悪くも簡単に値を変更できる。
例:StateProviderの例
StateProvider
final countStateProvider = StateProvider<int>((ref) => 0);
StateProviderは一番外側で宣言する。グローバル変数みたいだけど、グローバル変数ではない。
StateProvider
ref.watch(countStateProvider)
ref.read(countStateProvider.notifier).state ++;
StateProviderに限らず、riverpodのプロバイダーで管理しているデータの参照は、ConsumerWidget(他にも種類はあるらしい)で囲まれた範囲ならできる
Discussion