fix onGenerateRoute erorr and add initialRoute to GetNavigator
Showing
1 changed file
with
21 additions
and
8 deletions
@@ -455,16 +455,18 @@ class GetDelegate extends RouterDelegate<GetNavConfig> | @@ -455,16 +455,18 @@ class GetDelegate extends RouterDelegate<GetNavConfig> | ||
455 | } | 455 | } |
456 | 456 | ||
457 | class GetNavigator extends Navigator { | 457 | class GetNavigator extends Navigator { |
458 | - GetNavigator({ | ||
459 | - GlobalKey<NavigatorState>? key, | ||
460 | - bool Function(Route<dynamic>, dynamic)? onPopPage, | ||
461 | - required List<Page> pages, | ||
462 | - List<NavigatorObserver>? observers, | ||
463 | - bool reportsRouteUpdateToEngine = false, | ||
464 | - TransitionDelegate? transitionDelegate, | ||
465 | - }) : super( | 458 | + GetNavigator( |
459 | + {GlobalKey<NavigatorState>? key, | ||
460 | + bool Function(Route<dynamic>, dynamic)? onPopPage, | ||
461 | + required List<GetPage> pages, | ||
462 | + List<NavigatorObserver>? observers, | ||
463 | + bool reportsRouteUpdateToEngine = false, | ||
464 | + TransitionDelegate? transitionDelegate, | ||
465 | + String? initialRoute}) | ||
466 | + : super( | ||
466 | //keys should be optional | 467 | //keys should be optional |
467 | key: key, | 468 | key: key, |
469 | + initialRoute: initialRoute ?? '/', | ||
468 | onPopPage: onPopPage ?? | 470 | onPopPage: onPopPage ?? |
469 | (route, result) { | 471 | (route, result) { |
470 | final didPop = route.didPop(result); | 472 | final didPop = route.didPop(result); |
@@ -473,6 +475,17 @@ class GetNavigator extends Navigator { | @@ -473,6 +475,17 @@ class GetNavigator extends Navigator { | ||
473 | } | 475 | } |
474 | return true; | 476 | return true; |
475 | }, | 477 | }, |
478 | + onGenerateRoute: (RouteSettings settings) { | ||
479 | + final selectedPageList = | ||
480 | + pages.where((element) => element.name == settings.name); | ||
481 | + if (selectedPageList.isNotEmpty) { | ||
482 | + final selectedPage = selectedPageList.first; | ||
483 | + return GetPageRoute( | ||
484 | + page: selectedPage.page, | ||
485 | + settings: settings, | ||
486 | + ); | ||
487 | + } | ||
488 | + }, | ||
476 | reportsRouteUpdateToEngine: reportsRouteUpdateToEngine, | 489 | reportsRouteUpdateToEngine: reportsRouteUpdateToEngine, |
477 | pages: pages, | 490 | pages: pages, |
478 | observers: [ | 491 | observers: [ |
-
Please register or login to post a comment