onGenerateRoute function
Route
onGenerateRoute({
- required RouteSettings settings,
- required GetRouteSettings getRouteSettings,
- PageBuilder? notFoundPageBuilder,
- Map<
String, dynamic> ? arguments, - RouteSettingsWrapper? routeSettingsWrapper,
onGenerateRoute for Navigator 1.0
Implementation
Route<dynamic> onGenerateRoute({
required RouteSettings settings,
required GetRouteSettings getRouteSettings,
PageBuilder? notFoundPageBuilder,
Map<String, dynamic>? arguments,
RouteSettingsWrapper? routeSettingsWrapper,
}) {
arguments ??= settings.arguments as Map<String, dynamic>?;
FFRouteSettings routeSettings = getRouteSettings(
name: settings.name!,
arguments: arguments,
);
if (routeSettingsWrapper != null) {
routeSettings = routeSettingsWrapper(routeSettings);
}
if (notFoundPageBuilder != null &&
routeSettings.name == FFRoute.notFoundName) {
routeSettings = routeSettings.copyWith(builder: notFoundPageBuilder);
}
// final Widget? page = routeSettings.widget ?? notFoundWidget;
// if (page == null) {
// throw Exception(
// '''Route "${settings.name}" returned null. Route Widget must never return null,
// maybe the reason is that route name did not match with right path.
// You can use parameter[notFoundFallback] to avoid this ugly error.''',
// );
// }
// if (routeSettings.widget == null) {
// routeSettings = routeSettings.copyWith(widget: page);
// }
return routeSettings.createRoute();
}