json数据解析_「Flutter实战」22.JSON解析和复杂数据模型转换
22.JSON解析和复杂数据模型转换技巧json转Model类创建model文件夹,在里面新建category.dart类主要根据这个json来分析我们要做成类的样子 json数据class CategoryBigModel{String mallCategoryId;//类别编号String mallCategoryName;//类别名称}comments这个字段都是null值。所以在创...
·
22.JSON解析和复杂数据模型转换技巧
json转Model类
创建model文件夹,在里面新建category.dart类
主要根据这个json来分析我们要做成类的样子
json数据
class CategoryBigModel{ String mallCategoryId;//类别编号 String mallCategoryName;//类别名称}
comments这个字段都是null值。
所以在创建了的时候 我们直接用null来表示
我们上面只做了一个模型类:CategoryBigModel
在json里面是有多个CategoryBigModel类的。就是一个list的数据。CategoryBigListModel
使用我们定义的model,和model的list集合
我们要输出大类的名称
输出我们的类别
快速生成我们的dart类,数据模型
https://javiercbk.github.io/json_to_dart/
把所有的json复制过来,自动生成类
最终代码
category.dart
category_page.dart
class CategoryBigModel{ String mallCategoryId;//类别编号 String mallCategoryName;//类别名称 List bxMallSubDto;//不知道具体模型就用dynamic类型 Null comments; String image; //构造方法 CategoryBigModel({ this.mallCategoryId, this.mallCategoryName, this.bxMallSubDto, this.comments, this.image }); //工厂类的构造方法,就是我常用的实例化对象模式,好处是我们调用这个类的时候不用再使用new关键字了 //相当于java里面的多态,用起来和我们的静态方法是一样的 factory CategoryBigModel.formJson(dynamic json){ return CategoryBigModel( mallCategoryId:json['mallCategoryId'], mallCategoryName:json['mallCategoryName'], bxMallSubDto:json['bxMallSubDto'], comments:json['comments'], image:json['image'] ); }}//列表的modelclass CategoryBigListModel{ List data; CategoryBigListModel(this.data); factory CategoryBigListModel.fromJson(List json){ return CategoryBigListModel( json.map((i)=>CategoryBigModel.formJson((i))).toList() ); }}
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)