_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”工作正常并分配给表单值,那么为什么要在其他领域面临问题?:(
有人可以帮我解决这个问题,这里还需要做什么以及哪里出错了。