退出后如何回到应用程序的起点?

how to go back to the start point of the app after signing out?

退出后我想回到起点。我将尝试演示我的应用程序结构,以便于您理解。

首先我有一个包装器

    return user == null ? Authentication() : SectionWrapper();

在部分包装器中,我有 2 条使用推送替换导航的路线

所以基本上

Authentication() || SectionWrapper() at level 1
  pushReplacement: Section1() || Section2()  

在这些部分的每个部分中,我都有 2 个按钮并检查用户是否为 null,它 returns authentication() 如果不是,则检查部分小部件。问题是当我注销并再次登录时,我最终会回到我注销的位置,我想要的是返回到 auth,当我再次登录时,我应该移动到 SectionWrapper()。我试过 popUntil 但它不起作用,因为我使用的是 Push 替换。我也尝试 Navigator.push 到 sectionWrapper() 但它的 uid 有一些问题。最后,在该部分中,我尝试了

user == null
        ? SectionWrapper()
        :Widget tree

但是没用

那么这样做的可能方法是什么?

您可以只推送和删除直到您的主页。

Navigator.of(context).pushAndRemoveUntil(
                                  MaterialPageRoute(builder: (context) => MainPage()),
                                  (route) => false,
                                );

然后您的应用将“重新启动”