【问题标题】:How to return list of post model in flutter如何在颤动中返回帖子模型列表
【发布时间】:2020-09-09 14:16:55
【问题描述】:

这是我的 json 响应示例

[
    {
        "userId": 1,
        "id": 1,
        "title": "sunt aut facere repellat provident occaecati excepturi optio reprehenderit",
        "body": "quia et suscipit\nsuscipit recusandae consequuntur expedita et cum\nreprehenderit molestiae ut ut quas totam\nnostrum rerum est autem sunt rem eveniet architecto"
    },
    {
        "userId": 1,
        "id": 2,
        "title": "qui est esse",
        "body": "est rerum tempore vitae\nsequi sint nihil reprehenderit dolor beatae ea dolores neque\nfugiat blanditiis voluptate porro vel nihil molestiae ut reiciendis\nqui aperiam non debitis possimus qui neque nisi nulla"
    },
    {
        "userId": 1,
        "id": 3,
        "title": "ea molestias quasi exercitationem repellat qui ipsa sit aut",
        "body": "et iusto sed quo iure\nvoluptatem occaecati omnis eligendi aut ad\nvoluptatem doloribus vel accusantium quis pariatur\nmolestiae porro eius odio et labore et velit aut"
    },
    {
        "userId": 1,
        "id": 4,
        "title": "eum et est occaecati",
        "body": "ullam et saepe reiciendis voluptatem adipisci\nsit amet autem assumenda provident rerum culpa\nquis hic commodi nesciunt rem tenetur doloremque ipsam iure\nquis sunt voluptatem rerum illo velit"
    },
    {
        "userId": 1,
        "id": 5,
        "title": "nesciunt quas odio",
        "body": "repudiandae veniam quaerat sunt sed\nalias aut fugiat sit autem sed est\nvoluptatem omnis possimus esse voluptatibus quis\nest aut tenetur dolor neque"
    }
]

【问题讨论】:

    标签: flutter


    【解决方案1】:

    假设您使用的是http 包。您可以通过response.body 获取响应正文。之后,您可以解码响应以将其转换为列表。

    List<PostModel> postList = json.decode(response.body).map<PostModel>((post) {
      return PostModel.fromJson(post);
    }).toList();
    
    class PostModel {
      int userId;
      int id;
      String title;
      String body;
    
      PostModel({this.userId, this.id, this.title, this.body});
    
      PostModel.fromJson(Map<String, dynamic> json) {
        userId = json['userId'];
        id = json['id'];
        title = json['title'];
        body = json['body'];
      }
    
      Map<String, dynamic> toJson() {
        final Map<String, dynamic> data = <String, dynamic>{};
        data['userId'] = userId;
        data['id'] = id;
        data['title'] = title;
        data['body'] = body;
        return data;
      }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-08-17
      • 1970-01-01
      • 2015-07-09
      • 1970-01-01
      • 2019-07-27
      • 1970-01-01
      • 1970-01-01
      • 2011-09-15
      相关资源
      最近更新 更多