fix onGenerateRoute erorr and add initialRoute to GetNavigator
Showing
1 changed file
with
17 additions
and
4 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, | 458 | + GetNavigator( | 
| 459 | + {GlobalKey<NavigatorState>? key, | ||
| 460 | bool Function(Route<dynamic>, dynamic)? onPopPage, | 460 | bool Function(Route<dynamic>, dynamic)? onPopPage, | 
| 461 | - required List<Page> pages, | 461 | + required List<GetPage> pages, | 
| 462 | List<NavigatorObserver>? observers, | 462 | List<NavigatorObserver>? observers, | 
| 463 | bool reportsRouteUpdateToEngine = false, | 463 | bool reportsRouteUpdateToEngine = false, | 
| 464 | TransitionDelegate? transitionDelegate, | 464 | TransitionDelegate? transitionDelegate, | 
| 465 | - }) : super( | 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