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, result: result);
  } else if (newWidget != null) {
    return pushReplacement(
        context: context,
        newRoute: MaterialPageRoute(
            builder: (context) => newWidget,
            settings: newRouteName != null
                ? RouteSettings(name: newRouteName)
                : null),
        result: result);
  }
  return null;
}