【WIP】Riverpod使ってみた
- 簡単なリスト表示&詳細表示&更新できるものを作りました(動作検証用)
- riverpodでは共有したい状態をProviderでラップする
- providerには色々あり、その状態をどう使いたいかで使い分ける
- 個人的には以下で解釈した
- Provider…DIする時に使われてるイメージ(単純な値のキャッシュとかで使われてる)
- StateProvider…プリミティブ型用のProvider
- StateNotifierProvider…複雑な処理をするためのProvider
- FutureProvider…非同期処理を使える
- StreamProvider…Stream処理を使える
FutureProviderは更新を伴わないものに対して使って、更新処理とかはいる場合はStateNotificationProviderでAsyncValueを返せばいいと思っています- また
ProviderでDIしまくっているサンプルがあり、以下の感じでテストとかで使えそう(要検証)
- ラップしたものは
refで参照する- watch…変更の監視
- listen…変更時に任意の関数を実行
- read…値の取得のみで変更監視はしない
- Stateで保持するエンティティは
freezedで不変にする
- MVCチックなアーキテクチャの実装(以下の機能実装してみる)