flutter 如何查看GoRouter导航栈的顶部元素而不弹出它?

aelbi1ox  于 2023-01-06  发布在  Flutter
关注(0)|答案(1)|浏览(198)

我正在开发一个flutter应用程序。我在应用程序中有一个地方,您可以使用

GoRouter.of(context).push(...);

我的意思是你可以导航到屏幕A,然后到B,然后到A。有许多屏幕和许多可能的循环,但我想保护用户从最明显的一个,A〉B〉A〉B类型。(我不关心更大的循环,如A〉B〉C〉A〉B〉C和类似的)
为此,我需要检查导航栈顶部的元素,如果该元素与我们使用push时的位置相同,我将执行pops。
问题是我在谷歌上什么都找不到...
尝试过:谷歌搜索,检查API文档,阅读智能感知

q3qa4bjr

q3qa4bjr1#

使用GoRouter.of(context).location

GoRouter.of(context).location提供当前位置

示例:
  • 路由A具有路由路径/routeA
  • 路由B具有路由路径/routeB
GoRouter.of(context).location将返回/routeA/routeB

您可以基于此来决定pop()push()页面

相关问题