设想
我正在将用户从应用程序中的不同屏幕(例如destinationScreen、tractionScreen、reviewScreen 等)导航到loginScreen/signUpScreen,并且在成功登录后,我想将他从导航到loginScreen/signupScreen 的位置弹出回同一屏幕。
所以,我想弹出注册/登录过程中涉及的所有屏幕,比如3 个屏幕。
我已经尝试过的
我已经尝试过navigator.popUntil但只有当你想每次都像这样弹回单个屏幕时它才能工作:
推送路线:
Navigator.push(
context,
MaterialPageRoute(
settings: RouteSettings(name: '/loginRedirect'),
builder: (context) => AttractionScreen(
attractionData: att,
)),
);
signInScreen 中的弹出路径:
Navigator.popUntil(context, ModalRoute.withName('/loginRedirect'));
但是这种情况仅在您必须路由到单个特定屏幕时才有效,但在我的情况下,我必须根据用户被引导到登录屏幕的位置路由到不同的屏幕。
我现在想做什么
现在我想要一个实现,在成功登录后,我从导航器堆栈中弹出前三个屏幕,我搜索了很多但找不到任何解决方案。那么,如何从导航器堆栈中弹出最后一条路线?