flutter 如何将Json列表解析为字符串-调整代码,以便可以显示单个Json,就像可以显示Json列表一样

mwkjh3gx  于 2022-11-30  发布在  Flutter
关注(0)|答案(1)|浏览(191)

我收到此错误:

A value of type 'UserModel' can't be assigned to a variable of type 'List<UserModel>'.

我使用Postman来生成我的API服务代码(从互联网上获取API的http请求)。我使用https://app.quicktype.io/来生成我的用户模型类。
我看过一个flutter教程,它把json解析成一个List,因为json实际上就是一个List本身。但是在这个例子中,Json是一个单独的项(见图片了解区别)。我如何解析它?并在ListView.builder部件中显示?
您可以使用以下API链接重新创建此问题:https://reqres.in/api/users?page=1将json解析为List的代码片段是:

if (response.statusCode == 200) {
        String tempStoreDataFromApi = await response.stream.bytesToString();
        List<DataModel> dataList_1  =    dataModelFromJson(tempStoreDataFromApi);

json列表外观与单个json项外观的示例。

oyjwcjzk

oyjwcjzk1#

你的api响应是一个Map。如果你想访问它里面的列表,你应该在它上面使用["data"],如下所示:

List<UserModel> userModelFromJson(String str)-> List<UserModel>.from(((json.decode(str)["data"]) as List).map((x)-> UserModel.fromJson(x)));

相关问题