Flutter dart功能在等待后跳至功能结束

时间:2019-04-22 16:44:31

标签: dart flutter async-await

我有一个带有关键字async的函数,等待完成后,它跳过了几行代码,等待完成后转到了函数的结尾。有人知道我在做什么错吗?

void _createNewGroup(Function createNewGroup, BuildContext context) async {
    if (_validateAndSave()) {
      try {
        print("trying");
        Map<String, dynamic> result = await createNewGroup(_group_name);
        print("sucess is $result");
        if (result['success']) {
          print('Success poping dialoge');
          Navigator.of(context).pop();
          Navigator.pushReplacement(
              context, MaterialPageRoute(builder: (context) => HomePage()));
        } else {
          print("not created group");
        }
      } catch (error) {}
    }
  }
Future<Map<String, dynamic>> createNewGroup(String name) async {
    var result = {};
    var response;
    print('Group name $name');
    print("creating group");
    var group = ParseObject('Groups')
      ..set("group_name", name)
      ..set('createdBy_name', _parseUser.get('first_name'))
      ..set('CreatedBy_id', _parseUser.objectId)
      ..set('members', [{'name': _parseUser.get('first_name'), 'id': _parseUser.objectId}]);
    response = await group.save();
    if(response.success) {
      print('sucess creating object');
      result = {'success': true, 'message': 'New Group Created'};
      return result;
    } else {
      result = {'success': false, 'message': 'Error occured creating group'};
    }

    print("result is $result");
    print("response is ${response.result}");
    return result;
  }

0 个答案:

没有答案