40 lines
1.1 KiB
Dart
40 lines
1.1 KiB
Dart
import 'package:common_utils/common_utils.dart';
|
|
import 'package:flutter/cupertino.dart';
|
|
import 'package:flutter/material.dart';
|
|
|
|
import 'navigator_manager.dart';
|
|
|
|
/// @desc: 导航监听
|
|
|
|
class MyNavigatorObserver extends NavigatorObserver {
|
|
@override
|
|
void didPush(Route<dynamic> route, Route<dynamic>? previousRoute) {
|
|
LogUtil.v("didPush router : $route | previousRoute: $previousRoute");
|
|
NavigatorManager().addRouter(route);
|
|
}
|
|
|
|
@override
|
|
void didPop(Route<dynamic> route, Route<dynamic>? previousRoute) {
|
|
LogUtil.v("didPop router : $route | previousRoute: $previousRoute");
|
|
|
|
NavigatorManager().removeRouter(route);
|
|
|
|
}
|
|
|
|
@override
|
|
void didRemove(Route<dynamic> route, Route<dynamic>? previousRoute) {
|
|
LogUtil.v("didRemove router : $route | previousRoute: $previousRoute");
|
|
|
|
NavigatorManager().removeRouter(route);
|
|
|
|
}
|
|
|
|
@override
|
|
void didReplace({Route<dynamic>? newRoute, Route<dynamic>? oldRoute}) {
|
|
LogUtil.v("didReplace router : $newRoute | previousRoute: $oldRoute");
|
|
|
|
NavigatorManager().replaceRouter(newRoute!, oldRoute!);
|
|
|
|
}
|
|
}
|