问题描述
在App的开发过程中很多情况都需要从其他页面直接返回主页面。
解决方案:使用命名路由
条件:主页通过routes的"/"配置
MaterialApp(
routes: <String, WidgetBuilder>{
'/': (BuildContext context) {
return Scaffold(
appBar: AppBar(
title: const Text('Home Route'),
),
);
},
)
正确方式
Navigator.popUntil(context, ModalRoute.withName("/"));
错误方式:无法保持主页状态
Navigator.pushNamedAndRemoveUntil(context, "/", (check) => false);