fix rout state issue
This commit is contained in:
@@ -60,23 +60,24 @@ class CurrentTopRoute extends _$CurrentTopRoute {
|
|||||||
final router = ref.watch(routerProvider).value;
|
final router = ref.watch(routerProvider).value;
|
||||||
if (router == null) return null;
|
if (router == null) return null;
|
||||||
|
|
||||||
void update() {
|
GoRoute? getCurrentRoute() {
|
||||||
final config = router.routerDelegate.currentConfiguration;
|
final config = router.routerDelegate.currentConfiguration;
|
||||||
|
|
||||||
if (config.isEmpty) {
|
if (config.isEmpty) {
|
||||||
state = null;
|
return null;
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
final match = config.last;
|
final match = config.last;
|
||||||
state = match.route;
|
return match.route;
|
||||||
|
}
|
||||||
|
|
||||||
|
void update() {
|
||||||
|
state = getCurrentRoute();
|
||||||
}
|
}
|
||||||
|
|
||||||
router.routerDelegate.addListener(update);
|
router.routerDelegate.addListener(update);
|
||||||
ref.onDispose(() => router.routerDelegate.removeListener(update));
|
ref.onDispose(() => router.routerDelegate.removeListener(update));
|
||||||
|
|
||||||
update();
|
return getCurrentRoute();
|
||||||
|
|
||||||
return state;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -75,7 +75,7 @@ final class CurrentTopRouteProvider
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
String _$currentTopRouteHash() => r'1d71db42203483c7d919f44879e673f2f36d2e6a';
|
String _$currentTopRouteHash() => r'60bc1b11ab636ba250b891eed24f7e7dd8e62d81';
|
||||||
|
|
||||||
abstract class _$CurrentTopRoute extends $Notifier<RouteBase?> {
|
abstract class _$CurrentTopRoute extends $Notifier<RouteBase?> {
|
||||||
RouteBase? build();
|
RouteBase? build();
|
||||||
|
|||||||
Reference in New Issue
Block a user