【发布时间】:2019-08-28 01:35:17
【问题描述】:
在我的颤振应用程序中,我正在将数据从移动设备发送到服务器。该部分如下所示。
register.dart
void _createUser()
{
DataFetch().createUser(AppNavigation.getAPIUrl() +
"user/saveUser", user).then((String result){
print("RESULT IS: "+result);
});
}
data_fetch.dart
Future<String> createUser(String url, User body) async {
print("BODY: " + body.toJson().toString());
return http.post(url, body: convert.json.encode(body.toJson()), headers: {
"Accept": "application/json",
"content-type": "application/json"
}).then((http.Response response) {
final int statusCode = response.statusCode;
print("RESPONSE: " + response.body);
print("STATUS CODE: " + statusCode.toString());
if (statusCode < 200 || statusCode > 400 || response.body == null) {
throw new Exception("Error while fetching data");
} else {
return response.body;
}
});
}
我的 UI 在 register.dart 中,而 data_fetch.dart 是一个单独的类,其中包含支持各种数据传递工作的方法。
我需要显示snackbar,直到数据保存完成。我知道我可以使用FutureBuilder,将它作为一个小部件附加到它返回一些用户界面的地方是没有用的,因为在保存数据后我没有要显示的用户界面。我正在尝试向服务器发送数据,我只需要指出这一点。
我该怎么做?无论如何Future 似乎没有这样的设施。
【问题讨论】:
标签: android ios dart flutter flutter-layout