繁体   English   中英

如何从 Flutter 中的 Future 实例获取 object?

[英]How to get an object from an instance of Future in Flutter?

我写了下面的 function 是为了创建一个用户 object 以备后用。 但问题是这个 function 返回一个“未来”的实例。我无法获得我的用户 object 的属性。

  Future<User>?  user;

  Future<User> activerUser(String nom,String prenom,String code) async {
    final response = await http.post(
      Uri.parse('https://xxxxxxxxx'),
      headers: <String,String>{'Content-Type': 'application/json; charset=UTF-8'},
      body: jsonEncode(<String,String>{
        "nom_client":nom,
        "prenom_client":prenom,
        "num_client":code
      }),
    );
    if(response.statusCode==200){
      return User.fromJson(jsonDecode(response.body));
    }else{
      throw Exception('Echec de la creation de l'objet.');
    }
  }
if(_formKey.currentState!.validate()){
         user = activerUser(nomUesr,prenomUser,codeUser).then((obj){
         return obj;
     });
  print(user) ------>Instance of 'Future<User>';

我是 Flutter 和 Dart 的新手。谁能告诉我如何从“未来”实例更改为用户实例?
提前致谢。

如果在 function 之前添加等待,则可以取消它:

await activerUser();

如果这不起作用,则尝试在 function 中添加等待:

return await future;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM