didReplace method

  1. @override
void didReplace({
  1. Route? newRoute,
  2. Route? oldRoute,
})
override

The Navigator replaced oldRoute with newRoute.

Implementation

@override
void didReplace({Route? newRoute, Route? oldRoute}) {
  super.didReplace(newRoute: newRoute, oldRoute: oldRoute);

  INavigatorObserver? popped = listenerOf(oldRoute);
  INavigatorObserver? pushed = listenerOf(newRoute);

  /* Get Parameters */
  Map<String?, String>? parameters;
  if (popped != null) parameters = popped.onNavigatorPop();

  /* Notify Pushed Route */
  if (pushed != null) pushed.onNavigatorPush(parameters: parameters);

  /* Signal Change */
  for (INavigatorObserver listener in _listeners) {
    listener.onNavigatorChange();
  }
}