IRoute constructor
IRoute({
- String initialRoute = '/',
- required Map<
String, RouteBuilder> routes, - List<
String> ? tabs, - RouteGuard<
ParsedRoute> ? guard, - required Widget child,
Implementation
IRoute({
//parser需要的
String initialRoute = '/',
required Map<String, RouteBuilder> routes,
List<String>? tabs,
/// [RouteGuard] used to redirect.
RouteGuard<ParsedRoute>? guard,
//delegate需要的
required navigatorKey,
required Widget child,
} //无需builder,直接赋予rootNavigator一个child就
) : parser = IRouteParser(initialRoute: initialRoute, routes: routes, tabs: tabs, guard: guard),
_route = ParsedRoute(initialRoute) {
delegate = IRouterDelegate(
routeState: this, child: child, navigatorKey: navigatorKey);
_route = parser.initialRoute;
//_routes = parser.routes;
}