Flutter:初始值未在FormFormBuilder中更新

问题描述

 _updatePersonalFormScreen(String loginId) async {
    if (!DartUtility.isNullEmptyOrWhitespace(loginId)) {
      _personalInfo = await _service.getUserPersonalDetails(loginId);
      setState(() {
        if (_personalInfo != null) {
          if(!DartUtility.isNullEmptyList(_personalInfo.getContacts())){
            contactList = _personalInfo.getContacts();
          }     
          personalInfoMap = _personalInfo.toPersonalInfoMap();
        }
        print('personalInfo retrieved object ${_personalInfo.toString()}');   //1
      });
    }     
  }

formBuilder小部件:

  FormBuilder buildFormBuilder(BuildContext context) {
    print('personalInfoMap $personalInfoMap');         //2
    return FormBuilder(
          key: _personalDetailFormKey,initialValue: personalInfoMap,//3
          autovalidate: true,child: Stack(),);
  }

//第1行和第2行打印正确的值,但在第3行,初始值未分配给表单构建器文本框

'contactList'正确填充,并且在同一块中填充'personalInfoMap'未能按预期正常工作 或可能需要修改第3行分配的值以使其起作用

我也曾尝试与Future Builder合作,但没有运气。如果'contactList'工作正常并分配给表单值,那么为什么要在其他字段中遇到问题? :(

有人可以帮我吗,这里还有什么需要做的,哪里出错了。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)