Riverpod hooks_riverpod StateNotifier

hsuan-ming Yang
Jun 14, 2022

狀態通知 StateNotifier

final counterProvider = StateNotifierProvider.autoDispose<CounterNotifier,
int>((_) {
return CounterNotifier();
});

class CounterNotifier extends StateNotifier<int> {
CounterNotifier() : super(0);
void increment() {
state++;
}
}
...
home: Scaffold(
appBar: AppBar(title: Text("My Consumer App"),),
body: Center(child: Builder(builder: (context){
final provider = ref.watch(counterProvider);
return Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text("${provider}"),
],);
},),),
floatingActionButton: FloatingActionButton(
onPressed: (){
ref.read(counterProvider.notifier).increment();
},
child: Icon(Icons.add),),
),
...

關鍵字

StateNotifierProvider、StateNotifier、ref.watch、ref.read、notifier

--

--