我一直在我的flutter应用程序中处理一个JSON文件,我想在FutureBuilder
的一个Listview.builder
中合并多个JSON数据。在我的例子中,我有一个音频JSON文件和文本JSON文件。
var data;
Future<void> getAll() async{
// text JSON
final url1 = "http://api.alquran.cloud/v1/quran/en.asad";
Uri myUri1 = Uri.parse(url1);
final response1 = await http.get(myUri1);
//audio JSON
final url2 = "http://api.alquran.cloud/v1/quran/ar.alafasy";
Uri myUri2 = Uri.parse(url2);
final response2 = await http.get(myUri2);
/* here I want to combine
response = response1 + response2
then add it to data as */
if (response.statusCode == 200) {
data = json.decode(response.body.toString());
} else {
throw Exception('Failed to load text');
}
}
那么我该如何组合这些呢?如果我可以添加两个,我如何使用更多的JSON数据?
实际上我找到了答案。我只是按如下方式使用它。
data = json.decode(response1.body.toString());
data.addAll(json.decode(response2.body.toString()));
我还没有为更多的JSON数据尝试过它,但它对两个JSON文件都很好。