我是一个android开发者,现在正在学习flutter开发,在flutter中,navigator用来从一个页面移动到另一个页面,就像android中的intents一样,当我使用navigate时,返回到初始页面。我使用下面的代码导航.
Navigator.of(context).pushReplacement( MaterialPageRoute(builder: (c) => widget.user ? Dashboard() : Login()), );
wb1gzix01#
您可以使用**Navigator.push(context)**按钮从一个页面导航到另一个页面,如下所示:
onPressed: () { Navigator.push( context, MaterialPageRoute( builder: (context) => const ScreenDashboard(), ), ); },
wbrvyc0a2#
Flutter中的导航是作为堆栈实现的,因此当您使用Navigator.of(context).pushReplacementnavigator函数时,会将当前页面替换为新页面。如果您还想保存上一页,请使用Navigator.of(context).push
hujrc8aj3#
Flutter文档建议使用go_router包进行导航。具有高级导航和路由要求的Flutter应用程序(例如使用到每个屏幕的直接链接的Web应用程序,或具有多个Navigator小部件的应用程序)应使用路由包,例如go_router,该包可以在应用程序接收到新的深度链接时解析路由路径并配置Navigator。
go_router
3条答案
按热度按时间wb1gzix01#
您可以使用**Navigator.push(context)**按钮从一个页面导航到另一个页面,如下所示:
wbrvyc0a2#
Flutter中的导航是作为堆栈实现的,因此当您使用Navigator.of(context).pushReplacementnavigator函数时,会将当前页面替换为新页面。如果您还想保存上一页,请使用Navigator.of(context).push
hujrc8aj3#
Flutter文档建议使用
go_router
包进行导航。具有高级导航和路由要求的Flutter应用程序(例如使用到每个屏幕的直接链接的Web应用程序,或具有多个Navigator小部件的应用程序)应使用路由包,例如go_router,该包可以在应用程序接收到新的深度链接时解析路由路径并配置Navigator。
有关go_router的参考问题: