带参数的 Navigator.pop

ash*_*shf 5 dart flutter

我目前有路线

Navigator.pop(context,"/second");
Run Code Online (Sandbox Code Playgroud)

但是,我需要通过论证contactarguments:我知道这对于for来说效果很好popAndPushNamed,但我不知道如何为pop/popUntiletc做到这一点。

Contact contact = ModalRoute.of(context).settings.arguments;
Run Code Online (Sandbox Code Playgroud)

代码位于编辑页面上。在 上onPress,它返回到显示更新的文档字段的上一页。

dum*_*azy 5

Navigator.pop(context, "/second")将弹出当前路由并返回String“/秒”作为该路由的结果。如果这条路由被推送,它会收到一个,当它弹出时,Future它将对此进行解析。String

如果您的页面在 /myNextRoute 上弹出结果,则以下代码片段将返回“/second”作为结果。

final result = await Navigator.pushNamed(context, "/myNextRoute");
Run Code Online (Sandbox Code Playgroud)

所以我假设你想返回contact,所以只需使用

// on the first screen
final contact = await Navigator.pushNamed(context, "/myNextRoute");

// on the second screen
Navigator.pop(context, contact);
Run Code Online (Sandbox Code Playgroud)