Flutter在异步函数中调用Navigator.pop

时间:2020-05-11 03:26:37

标签: flutter dart

我有一个异步功能,当按下按钮时会被调用。 此功能会发出http放置请求,如果结果成功,则需要跳到上一个屏幕。

void updateSurv() async{

  http.Response result;
  result = await http.put(
    "http://10.0.2.2:8000/emergencies/${widget.id}/put",
    body: {

      "title" : titleController.text,
      "Content" : contentController.text,

    }
  );

  if(json.decode(result.body)["result"] == "Success"){

    print("success");
    Navigator.of(context).pop();

  }

}

服务器上的值被更新,即 print(“ success”),但是应用程序不会弹出到上一个屏幕。

所以我的问题是,从异步函数调用时,Navigator类不能正常工作吗?

1 个答案:

答案 0 :(得分:0)

您必须使用For I in r.text: 函数来执行此类操作。

.then()