万年素人からHackerへの道

万年素人がHackerになれるまで殴り書きするぜ。

  • ・資産運用おすすめ
    10万円は1000円くらい利益
    資産運用ブログ アセマネ
    • ・寄付お願いします
      YENTEN:YYzNPzdsZWqr5THWAdMrKDj7GT8ietDc2W
      BitZenny:ZfpUbVya8MWQkjjGJMjA7P9pPkqaLnwPWH
      c0ban:8KG95GXdEquNpPW8xJAJf7nn5kbimQ5wj1
      Skycoin:KMqcn7x8REwwzMHPi9fV9fbNwdofYAWKRo

    RiverpodのStateNotifierでstateに代入

    class CurrentIndexNotifier extends StateNotifier<int> {
      CurrentIndexNotifier()
          : super(
              // 初期値として適当なデータを入れています
              0,
            );
    
      void setIndex(int index) {
        state = index;
      }
    }
    
    final currentIndexProvider =
        StateNotifierProvider<CurrentIndexNotifier, int>((ref) {
      return CurrentIndexNotifier();
    });
    

    こんなプロバイダ作ってると setIndex で怒られる。 use_setters_to_change_properties

    直接 state に入れろってことか。

    しかし、

    ref.read(currentIndexProvider.notifier).setIndex(index);

    をやめて、

    ref.read(currentIndexProvider.notifier).state = index;

    とやったら。

    The member 'state' can only be used within instance members of subclasses of 'package:state_notifier/state_notifier.dart'.