pushReplacement<T, TO> method

  1. @override
Future<T?>? pushReplacement<T, TO>({
  1. BuildContext? context,
  2. Route<T>? newRoute,
  3. String? newRouteName,
  4. Widget? newWidget,
  5. TO? result,
})
override

Implementation

@override
Future<T?>? pushReplacement<T, TO>(
    {BuildContext? context,
    Route<T>? newRoute,
    String? newRouteName,
    Widget? newWidget,
    TO? result}) async {
  context ??= this.context;
  if (newRoute != null) {
    return Navigator.pushReplacement(context, newRoute);
  } else if (newWidget != null) {
    return Navigator.pushReplacement(
        context,
        MaterialPageRoute(
            builder: (context) => newWidget,
            settings: newRouteName != null
                ? RouteSettings(name: newRouteName)
                : null));
  }
  return null;
}