router_flutter
介绍
基于fluro搭建APP路由架构
功能
- route_link - 简单封装跳转路由方法
- route_observer - 路由监听,需要再main.dart中定义
- route_change - 监听路由变化,配合route_observer,在需要的widget中使用
- routes - 路由表定义
- route_handlers - 路由方法定义,定义参数
- application - 路由汇总,需要再main.dart中初始化
route_observer输入链接说明
初始化
void main() {
runApp(MyApp());
}
RouteObserver<PageRoute> routeObserver = RouteObserver<PageRoute>();
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
...
navigatorObservers: [routeObserver],
home: HomePage(),
);
}
}
route_change
在widget中监听路由变化
@override
void initState() {
super.initState();
RouteChange.getInstance().addListener(_listener);
RouteChange.getInstance().addNavListener(_navListener);
RouteChange.getInstance().addTabListener(_tabListener);
}
@override
void dispose() {
RouteChange.getInstance().removeListener(_listener);
RouteChange.getInstance().removeNavListener(_navListener);
RouteChange.getInstance().removeTabListener(_tabListener);
super.dispose();
}