refreshState method
Future<void>
refreshState({
- required FutureOr onRefresh(),
- FutureOr onError(
- Object e,
- StackTrace stackTrace
- bool isThrowOnError = true,
GeneralLibraryFlutter
Implementation
Future<void> refreshState({
required FutureOr<dynamic> Function() onRefresh,
FutureOr<dynamic> Function(Object e, StackTrace stackTrace)? onError,
bool isThrowOnError = true,
}) async {
if (isLoading) {
return;
}
setState(() {
isLoading = true;
});
await Future(() async {
try {
await onRefresh();
} catch (e, stack) {
if (isThrowOnError) {
rethrow;
}
// ignore: non_constant_identifier_names
final on_error = onError;
if (on_error != null) {
try {
await on_error(e, stack);
} catch (e) {}
return;
}
}
});
setState(() {
isLoading = false;
});
}