dart 使用导航功能处理从一个页面到另一个页面的移动的最佳方式是什么

h6my8fg2  于 2023-03-15  发布在  其他
关注(0)|答案(3)|浏览(167)

我是一个android开发者,现在正在学习flutter开发,在flutter中,navigator用来从一个页面移动到另一个页面,就像android中的intents一样,当我使用navigate时,返回到初始页面。
我使用下面的代码导航.

Navigator.of(context).pushReplacement(
        MaterialPageRoute(builder: (c) => widget.user ? Dashboard() : Login()),
      );
wb1gzix0

wb1gzix01#

您可以使用**Navigator.push(context)**按钮从一个页面导航到另一个页面,如下所示:

onPressed: () {
  Navigator.push(
    context,
    MaterialPageRoute(
      builder: (context) => const ScreenDashboard(),
    ),
  );
},
wbrvyc0a

wbrvyc0a2#

Flutter中的导航是作为堆栈实现的,因此当您使用Navigator.of(context).pushReplacementnavigator函数时,会将当前页面替换为新页面。如果您还想保存上一页,请使用Navigator.of(context).push

hujrc8aj

hujrc8aj3#

Flutter文档建议使用go_router包进行导航。
具有高级导航和路由要求的Flutter应用程序(例如使用到每个屏幕的直接链接的Web应用程序,或具有多个Navigator小部件的应用程序)应使用路由包,例如go_router,该包可以在应用程序接收到新的深度链接时解析路由路径并配置Navigator。

有关go_router的参考问题:
  • Flutter:go_router如何将多个参数传递给其他屏幕?
  • Go_Router将对象传递到新路由

相关问题