List returnMovies = [];
Future<List> _getData() async {
final response = await http.get("https:../getTodayMovies",
headers: {HttpHeaders.AUTHORIZATION: Acess_Token.access_token});
if (response.body != null) {
returnMovies = json.decode(response.body);
.....
setState(() {});
} else {
final responseUpcoming = await http.get("/upcoming",
headers: {HttpHeaders.AUTHORIZATION: Acess_Token.access_token});
returnMovies = json.decode(responseUpcoming.body);
}
Run Code Online (Sandbox Code Playgroud)
response.body 看起来像:
[{"id":394470548,"host_group_name":"heyab redda","movie_image":"..png","type":"horror","code":"X123","name":"Lovely","start_time":1554364800,"end_time":1554393600,"}]
Run Code Online (Sandbox Code Playgroud)
responseUpcoming.body 看起来像:
{"id":394470545,"host_group_name":"foo redda","movie_image":".png","type":"horror","code":"X123","name":"Lovely","start_time":1554364800,"end_time":1554393600,"}, {"id":394470548,"host_group_name":"foo1 redda","movie_image":"..png","type":"comic","code":"X125","name":"Lovely1","start_time":1554364800,"end_time":1554393600,"}
Run Code Online (Sandbox Code Playgroud)
我得到的错误是: String, dynamic is not a subtype of type List<dynamic>
。
在我执行的第一个 API 调用中,我通常会返回一个对象数组,但是,当它为空时,第二个 API 调用会返回一个我想推入名为 returnMovies 的数组中的对象列表,我该如何实现这个??有没有办法将这些对象推送到数组中??那么我想使用这个数组来动态构建一个 Listview.builder。我声明的方式是否正确?我对 Dart 很陌生。谢谢
听起来你正在寻找 addAll
returnMovies.addAll(json.decode(returnUpcoming.body))
Run Code Online (Sandbox Code Playgroud)