You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让Get.back()携带参数并在Page A中接收该参数

在GetX中从Page B返回Page A时接收返回参数

方式1:使用Get.to()跳转时接收返回值

当你在Page A中通过Get.to()跳转到Page B时,Get.to()会返回一个Future,你可以通过await或者.then()来获取Page B返回的参数。

示例代码:

// Page A 跳转逻辑
void goToPageB() async {
  // 跳转到Page B并等待返回结果
  final result = await Get.to(() => PageB());
  
  // 判断结果不为空后处理参数
  if (result != null) {
    // 你传递的是数组[newCreatedId],所以取第一个元素
    final newCreatedId = result[0];
    // 这里添加你的业务逻辑,比如更新页面数据、触发状态更新等
    print('从Page B返回的ID:$newCreatedId');
  }
}

Page B中的返回代码:

// Page B 点击返回按钮时的逻辑
void goBack() {
  // 假设newCreatedId是你要传递的变量
  final newCreatedId = 'xxx123';
  // 携带参数返回Page A
  Get.back(result: [newCreatedId]);
}

方式2:使用命名路由Get.toNamed()跳转时接收返回值

如果用命名路由跳转,接收逻辑和Get.to()一致,同样通过await获取返回值:

// Page A 命名路由跳转逻辑
void goToPageB() async {
  final result = await Get.toNamed('/pageB');
  
  if (result != null) {
    final newCreatedId = result[0];
    // 处理业务逻辑
  }
}

补充说明

  • 如果你不需要传递数组,直接传递单个值(比如Get.back(result: newCreatedId)),那么Page A中直接取final newCreatedId = result;即可。
  • 确保全程使用GetX的路由方法(Get.to()/Get.toNamed()/Get.back()),不要混用原生Navigator,否则无法正确接收返回参数。

内容的提问来源于stack exchange,提问作者matti peter

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 21:40:52