safeSetState method
Safely updates the widget state.
This prevents errors that occur when calling setState on
an unmounted widget.
Example:
class MyWidget extends StatefulWidget { ... }
class _MyWidgetState extends State<MyWidget> {
int counter = 0;
void increment() {
safeSetState(() {
counter++;
});
}
}
Implementation
void safeSetState(VoidCallback callback) {
if (mounted) {
// ignore: invalid_use_of_protected_member
setState(callback);
} else {
debugLog(
'WARNING: Attempted to update state on an unmounted widget.',
level: LogLevel.warning,
);
}
}