【Flutter】AutoDisposeProviderの使い方

flutter

FlutterのRivepodが 2.0にバージョンアップしてからRiverpod Generatorで自動生成されるAutoDisposeNotifierProviderがどう言った動きをしているか気になったのでメモ程度にここに記載します

AutoDisposeNotifierProviderとは

読み取り専用の値を公開するプロバイダーと公式を和訳すると書いていました。

AutoDisposeProvider class - riverpod library - Dart API
API docs for the AutoDisposeProvider class from the riverpod library, for the Dart programming language.

つまり、私的に下記のような理解です。

  • 書き込み等ができないプロバイダー
  • いろんなプロバイダーの代役として汎用性の高いProvider
  • 自分でDisposeする必要のないAutoでDisposeしてくれる

実装方法

@riverpodをクラスの前に書き込むだけです。

@riverpod
class XXController extends _$XXController {

その他Riverpod Generatorの使い方についてはこちらで確認ください。

ちなみに@Riverpod(keepAlive: true)とクラスの前に記載すると自動破棄されなくなるのでRiverpod1系の使い方をしたい方はそちらで対応できます。

@Riverpod(keepAlive: true)
class XXController extends _$XXController {

最後に

まだ、深い理解までいっていないので改めてインプットした際にこちらの記事について更新していこうと思います。 今後もAutoDisposeNotifierProvideと向き合う機会は多いと思いますので。

ではまた。

コメント

タイトルとURLをコピーしました