flutter 默认跳转封装
flutter 默认跳转封装:
class AppRouter {
//跳转到目标页面
static Future<void> push(BuildContext context, Widget view) async {
await Navigator.push(
context,
MaterialPageRoute(builder: (context) => view),
);
}
//跳转到目标页面并等待返回结果
static Future<T?> pushWithResult<T>(BuildContext context, Widget view) async {
return await Navigator.push<T>(
context,
MaterialPageRoute(builder: (context) => view),
);
}
// 跳转到目标页面并移除所有之前的页面
static Future<void> pushAndReplaceAll(
BuildContext context, Widget view) async {
await Navigator.pushAndRemoveUntil(
context,
MaterialPageRoute(builder: (context) => view),
(route) => false, // 这个条件意味着移除所有页面
);
}
// 返回上一页
static void pop(BuildContext context, {dynamic result}) {
Navigator.pop(context, result);
}
}