【发布时间】:2021-07-24 16:44:54
【问题描述】:
我有服务从 api 接收一些数据: 导入'../models/clubs.dart'; 将“包:http/http.dart”导入为 http;
class ApiService {
var url = 'http://10.0.2.2:8000/api/v1/';
getActiveSeasonClubs() async {
var newurl = Uri.parse(url + 'active_season_clubs/');
var response = await http.get(newurl);
var data = clubsFromJson((response.body));
return data;
}
}
我想在提供者中复制这个数据列表以使用它并在应用程序中更新它,我使用了这个但收到了空数据:
class TeamsProvider with ChangeNotifier {
var _clubs = [];
get clubs => loadValue();
Future loadValue() async {
_clubs = await ApiService().getActiveSeasonClubs();
return _clubs;
}
}
并在 FutureBuilder 中使用它:
body: Consumer<TeamsProvider>(builder: (context, teamsProv, child) {
return FutureBuilder(
future: teamsProv.clubs,
【问题讨论】:
-
我认为您需要在未来调用该函数:teamProv.loadValue(),
-
@JorgeVieira 它在未来的构建器中获取数据,但我想将其保存在列表中以对其进行更新