33 lines
933 B
Dart
Raw Normal View History

2024-07-19 21:25:38 +03:30
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'counter.dart';
2024-07-19 21:25:38 +03:30
class CounterWidget extends ConsumerWidget {
const CounterWidget({super.key});
@override
Widget build(BuildContext context, WidgetRef ref) {
// TODO: implement build
var counter = ref.watch(counterNotifierProvider);
2024-07-19 21:25:38 +03:30
return Column(
children: [
Center(
child: switch (counter) {
2024-07-19 21:25:38 +03:30
AsyncData(:final value ) => Text(
'data: $value'
),
AsyncError() => const Text('Oops, something unexpected happened'),
_ => const CircularProgressIndicator(),
}),
ElevatedButton(onPressed:() {
ref.read(counterNotifierProvider.notifier).plus();
}, child: const Text("plus")),
ElevatedButton(onPressed: () {
ref.read(counterNotifierProvider.notifier).minus();
}, child: const Text("minus")),
]
);
}
}