首页 > 解决方案 > Navigator.pop 带参数

问题描述

我目前有路线

Navigator.pop(context,"/second");

但是,我需要通过参数contact。我知道这适用于arguments:for popAndPushNamed,但我不知道如何为pop/popUntil等做。

Contact contact = ModalRoute.of(context).settings.arguments;

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

标签: flutterdart

解决方案


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

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

final result = await Navigator.pushNamed(context, "/myNextRoute");

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

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

// on the second screen
Navigator.pop(context, contact);

推荐阅读