質問内容
FlutterでRiverpodを使って状態管理をしているのですが、以下のようなコードを書いた時にsetDay
という関数の部分にuse_setters_to_change_properties
という「ただ値を入れるだけだったらsetterを使ってよ」という警告がでてしまいます。
dart
1final sampleProvider = StateNotifierProvider<SampleNotifier, int>((ref) {2 return SampleNotifier();3});4 5class SampleNotifier extends StateNotifier<int> {6 SampleNotifier() : super(0);7 void setDay({required int day}) {8 state = day;9 }10}11
しかし、警告にしたがってsetterを使うように修正した場合、今度はavoid_setters_without_getters
という「getterを使わないsetterは使わないで」という警告が出てしまいます。そして、getterを使うと今度はunnecessary_getters_setters
という「値を出し入れするだけのシンプルなsetter/getterは使わないでください」という警告が出てしまいます。
しかし私はint型の値を代入して、画面を再描画したいだけです。
どうすれば他の警告を出さずにuse_setters_to_change_properties
という警告を消すことができるのでしょうか。
lintの修正とriverpodを使わないということはしたくないです。
発生している問題・エラーメッセージ
unnecessary_getters_setters
avoid_setters_without_getters
use_setters_to_change_properties
0 コメント