我不知道我做了什么,然后Dio停下来完成将值发布到服务器的函数。该函数执行查询,但是FutureBuilder永远不会更改状态。...这是代码,是否有人对此提出建议?
Widget dropDownLanguage() {
return FutureBuilder(
future: _futureRetorno ,
builder: (context, snapshot) {
if (snapshot.hasData) {
Map valoresUsuario = _userLanguages.asMap();
print(_userLanguages);
} else {
return Center(
child: CircularProgressIndicator(),
);
}
}
);
}
Future <List> loadUserSettings() async{
FormData formData = FormData.fromMap({
"action" : "user_settings",
"usuario_id": _usuario_id,
});
_userLanguages = await repository.consultaWS(formData);
print("finalizado");
return _userLanguages;
}
@override
void initState() {
_futureRetorno = loadUserSettings();
}
答案 0 :(得分:0)
问题在于服务器正在响应标头header('Content-Type: text/plain; charset=UTF-8');
,应该为header('Content-type: application/json; charset=UTF-8');
这不是Dio的错,而是PHP ...