onGenerateRoute method

Route onGenerateRoute(
  1. RouteSettings settings
)

Implementation

Route onGenerateRoute(RouteSettings settings) {
  var result = _findRoute(settings);
  if(result['notFound'] && settings.name!.contains("/")){
    //look for a closer route
    var route = settings.name!.substring(0, settings.name!.lastIndexOf("/"));
    if(route.length > 0){
      result = _findRoute(RouteSettings(name: route), complementRoute: settings.name!.replaceAll(route, ""));
    }
  }
  return PageRouteBuilder(
    settings: result['route'],
    pageBuilder: (_, __, ___) => result['widget'],
    transitionsBuilder: transitionsBuilder ?? _defaultTransitionsBuilder
  );
}