我如何知道页面是否已推送到导航堆栈中?

Agu*_*ana 2 dart flutter flutter-navigation

假设我有 2 个页面,PageA 和 PageB。

如果用户点击 PageA 中的按钮,那么它将使用下面的代码移动到 PageB

Navigator.of(context).pushNamed("pageB");
Run Code Online (Sandbox Code Playgroud)

因此,PageB 的左上角应用栏中有后退按钮

我的问题是……

我如何知道页面是否被推送?我只想在页面的应用栏中有后退按钮时执行某些操作

Val*_*nal 7

你可以使用这个:

final hasPagePushed = Navigator.of(context).canPop();
Run Code Online (Sandbox Code Playgroud)

这实际上是 flutterAppBar用来确定是否应该显示后退按钮的方法。