json转Model类

创建model文件夹,在里面新建category.dart类

主要根据这个json来分析我们要做成类的样子

{
"code": "0",
"message": "success",
"data": [
{
"mallCategoryId": "4",
"mallCategoryName": "白酒",
"bxMallSubDto": [
{
"mallSubId": "2c9f6c94621970a801626a35cb4d0175",
"mallCategoryId": "4",
"mallSubName": "名酒",
"comments": ""
},
{
"mallSubId": "2c9f6c94621970a801626a363e5a0176",
"mallCategoryId": "4",
"mallSubName": "宝丰",
"comments": ""
},
{
"mallSubId": "2c9f6c94621970a801626a3770620177",
"mallCategoryId": "4",
"mallSubName": "北京二锅头",
"comments": ""
},
{
"mallSubId": "2c9f6c94679b4fb10167f7cc035c15a8",
"mallCategoryId": "4",
"mallSubName": "大明",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7cc2af915a9",
"mallCategoryId": "4",
"mallSubName": "杜康",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7cc535115aa",
"mallCategoryId": "4",
"mallSubName": "顿丘",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7cc77b215ab",
"mallCategoryId": "4",
"mallSubName": "汾酒",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7cca72e15ac",
"mallCategoryId": "4",
"mallSubName": "枫林",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7cccae215ad",
"mallCategoryId": "4",
"mallSubName": "高粱酒",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7ccf0d915ae",
"mallCategoryId": "4",
"mallSubName": "古井",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7cd1d6715af",
"mallCategoryId": "4",
"mallSubName": "贵州大曲",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7cd3f2815b0",
"mallCategoryId": "4",
"mallSubName": "国池",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7cd5d3015b1",
"mallCategoryId": "4",
"mallSubName": "国窖",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7cd7ced15b2",
"mallCategoryId": "4",
"mallSubName": "国台",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7cd9b9015b3",
"mallCategoryId": "4",
"mallSubName": "汉酱",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7cdbfd215b4",
"mallCategoryId": "4",
"mallSubName": "红星",
"comments": null
},
{
"mallSubId": "2c9f6c946891d16801689474e2a70081",
"mallCategoryId": "4",
"mallSubName": "怀庄",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7cdddf815b5",
"mallCategoryId": "4",
"mallSubName": "剑南春",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7cdfd4815b6",
"mallCategoryId": "4",
"mallSubName": "江小白",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb1016802277c37160e",
"mallCategoryId": "4",
"mallSubName": "金沙",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7ce207015b7",
"mallCategoryId": "4",
"mallSubName": "京宫",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7ce46d415b8",
"mallCategoryId": "4",
"mallSubName": "酒鬼",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb101680226de23160d",
"mallCategoryId": "4",
"mallSubName": "口子窖",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7ce705515b9",
"mallCategoryId": "4",
"mallSubName": "郎酒",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7ce989e15ba",
"mallCategoryId": "4",
"mallSubName": "老口子",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7cec30915bb",
"mallCategoryId": "4",
"mallSubName": "龙江家园",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7cef15c15bc",
"mallCategoryId": "4",
"mallSubName": "泸州",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7cf156f15bd",
"mallCategoryId": "4",
"mallSubName": "鹿邑大曲",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7cf425b15be",
"mallCategoryId": "4",
"mallSubName": "毛铺",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7cf9dc915c0",
"mallCategoryId": "4",
"mallSubName": "绵竹",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7cfbf1c15c1",
"mallCategoryId": "4",
"mallSubName": "难得糊涂",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7cfdd7215c2",
"mallCategoryId": "4",
"mallSubName": "牛二爷",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7cf71e715bf",
"mallCategoryId": "4",
"mallSubName": "茅台",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7d7eda715c3",
"mallCategoryId": "4",
"mallSubName": "绵竹",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7d96e5c15c4",
"mallCategoryId": "4",
"mallSubName": "难得糊涂",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7dab93b15c5",
"mallCategoryId": "4",
"mallSubName": "牛二爷",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7dae16415c6",
"mallCategoryId": "4",
"mallSubName": "牛栏山",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7db11cb15c7",
"mallCategoryId": "4",
"mallSubName": "前门",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7db430c15c8",
"mallCategoryId": "4",
"mallSubName": "全兴",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7db6cac15c9",
"mallCategoryId": "4",
"mallSubName": "舍得",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7db9a4415ca",
"mallCategoryId": "4",
"mallSubName": "双沟",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7dc30b815cb",
"mallCategoryId": "4",
"mallSubName": "水井坊",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7dc543e15cc",
"mallCategoryId": "4",
"mallSubName": "四特",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7dc765c15cd",
"mallCategoryId": "4",
"mallSubName": "潭酒",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7dc988a15ce",
"mallCategoryId": "4",
"mallSubName": "沱牌",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7dcba5a15cf",
"mallCategoryId": "4",
"mallSubName": "五粮液",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7dcd9e815d0",
"mallCategoryId": "4",
"mallSubName": "西凤",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7dcf6d715d1",
"mallCategoryId": "4",
"mallSubName": "习酒",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7dd11b215d2",
"mallCategoryId": "4",
"mallSubName": "小白杨",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7dd2f3c15d3",
"mallCategoryId": "4",
"mallSubName": "洋河",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7dd969115d4",
"mallCategoryId": "4",
"mallSubName": "伊力特",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7ddb16c15d5",
"mallCategoryId": "4",
"mallSubName": "张弓",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7ddd6c715d6",
"mallCategoryId": "4",
"mallSubName": "中粮",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7de126815d7",
"mallCategoryId": "4",
"mallSubName": "竹叶青",
"comments": null
}
],
"comments": null,
"image": "http://images.baixingliangfan.cn/firstCategoryPicture/20190131/20190131170036_4477.png"
},
{
"mallCategoryId": "1",
"mallCategoryName": "啤酒",
"bxMallSubDto": [
{
"mallSubId": "2c9f6c946016ea9b016016f79c8e0000",
"mallCategoryId": "1",
"mallSubName": "百威",
"comments": ""
},
{
"mallSubId": "2c9f6c94608ff843016095163b8c0177",
"mallCategoryId": "1",
"mallSubName": "福佳",
"comments": ""
},
{
"mallSubId": "402880e86016d1b5016016db9b290001",
"mallCategoryId": "1",
"mallSubName": "哈尔滨",
"comments": ""
},
{
"mallSubId": "402880e86016d1b5016016dbff2f0002",
"mallCategoryId": "1",
"mallSubName": "汉德",
"comments": ""
},
{
"mallSubId": "2c9f6c946449ea7e01647cd6830e0022",
"mallCategoryId": "1",
"mallSubName": "崂山",
"comments": ""
},
{
"mallSubId": "2c9f6c946449ea7e01647cd706a60023",
"mallCategoryId": "1",
"mallSubName": "林德曼",
"comments": ""
},
{
"mallSubId": "2c9f6c94679b4fb10167f7e1411b15d8",
"mallCategoryId": "1",
"mallSubName": "青岛",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7e1647215d9",
"mallCategoryId": "1",
"mallSubName": "三得利",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7e182e715da",
"mallCategoryId": "1",
"mallSubName": "乌苏",
"comments": null
},
{
"mallSubId": "2c9f6c9468118c9c016811ab16bf0001",
"mallCategoryId": "1",
"mallSubName": "雪花",
"comments": null
},
{
"mallSubId": "2c9f6c9468118c9c016811aa6f440000",
"mallCategoryId": "1",
"mallSubName": "燕京",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7e19b8f15db",
"mallCategoryId": "1",
"mallSubName": "智美",
"comments": null
}
],
"comments": null,
"image": "http://images.baixingliangfan.cn/firstCategoryPicture/20190131/20190131170044_9165.png"
},
{
"mallCategoryId": "2",
"mallCategoryName": "葡萄酒",
"bxMallSubDto": [
{
"mallSubId": "2c9f6c9460337d540160337fefd60000",
"mallCategoryId": "2",
"mallSubName": "澳大利亚",
"comments": ""
},
{
"mallSubId": "402880e86016d1b5016016e083f10010",
"mallCategoryId": "2",
"mallSubName": "德国",
"comments": ""
},
{
"mallSubId": "402880e86016d1b5016016df1f92000c",
"mallCategoryId": "2",
"mallSubName": "法国",
"comments": ""
},
{
"mallSubId": "2c9f6c94621970a801626a40feac0178",
"mallCategoryId": "2",
"mallSubName": "南非",
"comments": ""
},
{
"mallSubId": "2c9f6c94679b4fb10167f7e5c9a115dc",
"mallCategoryId": "2",
"mallSubName": "葡萄牙",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7e5e68f15dd",
"mallCategoryId": "2",
"mallSubName": "西班牙",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7e609f515de",
"mallCategoryId": "2",
"mallSubName": "新西兰",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7e6286a15df",
"mallCategoryId": "2",
"mallSubName": "意大利",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7e6486615e0",
"mallCategoryId": "2",
"mallSubName": "智利",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7e66c6815e1",
"mallCategoryId": "2",
"mallSubName": "中国",
"comments": null
}
],
"comments": null,
"image": "http://images.baixingliangfan.cn/firstCategoryPicture/20190131/20190131170053_878.png"
},
{
"mallCategoryId": "3",
"mallCategoryName": "清酒洋酒",
"bxMallSubDto": [
{
"mallSubId": "402880e86016d1b5016016e135440011",
"mallCategoryId": "3",
"mallSubName": "清酒",
"comments": ""
},
{
"mallSubId": "402880e86016d1b5016016e171cc0012",
"mallCategoryId": "3",
"mallSubName": "洋酒",
"comments": ""
}
],
"comments": null,
"image": "http://images.baixingliangfan.cn/firstCategoryPicture/20190131/20190131170101_6957.png"
},
{
"mallCategoryId": "5",
"mallCategoryName": "保健酒",
"bxMallSubDto": [
{
"mallSubId": "2c9f6c94609a62be0160a02d1dc20021",
"mallCategoryId": "5",
"mallSubName": "黄酒",
"comments": ""
},
{
"mallSubId": "2c9f6c94648837980164883ff6980000",
"mallCategoryId": "5",
"mallSubName": "药酒",
"comments": ""
}
],
"comments": null,
"image": "http://images.baixingliangfan.cn/firstCategoryPicture/20190131/20190131170110_6581.png"
},
{
"mallCategoryId": "2c9f6c946449ea7e01647ccd76a6001b",
"mallCategoryName": "预调酒",
"bxMallSubDto": [
{
"mallSubId": "2c9f6c946449ea7e01647d02f6250026",
"mallCategoryId": "2c9f6c946449ea7e01647ccd76a6001b",
"mallSubName": "果酒",
"comments": ""
},
{
"mallSubId": "2c9f6c946449ea7e01647d031bae0027",
"mallCategoryId": "2c9f6c946449ea7e01647ccd76a6001b",
"mallSubName": "鸡尾酒",
"comments": ""
},
{
"mallSubId": "2c9f6c946449ea7e01647d03428f0028",
"mallCategoryId": "2c9f6c946449ea7e01647ccd76a6001b",
"mallSubName": "米酒",
"comments": ""
}
],
"comments": null,
"image": "http://images.baixingliangfan.cn/firstCategoryPicture/20190131/20190131170124_4760.png"
},
{
"mallCategoryId": "2c9f6c946449ea7e01647ccf3b97001d",
"mallCategoryName": "下酒小菜",
"bxMallSubDto": [
{
"mallSubId": "2c9f6c946449ea7e01647dc18e610035",
"mallCategoryId": "2c9f6c946449ea7e01647ccf3b97001d",
"mallSubName": "熟食",
"comments": ""
},
{
"mallSubId": "2c9f6c946449ea7e01647dc1d9070036",
"mallCategoryId": "2c9f6c946449ea7e01647ccf3b97001d",
"mallSubName": "火腿",
"comments": ""
},
{
"mallSubId": "2c9f6c946449ea7e01647dc1fc3e0037",
"mallCategoryId": "2c9f6c946449ea7e01647ccf3b97001d",
"mallSubName": "速冻食品",
"comments": ""
}
],
"comments": null,
"image": "http://images.baixingliangfan.cn/firstCategoryPicture/20190131/20190131170133_4419.png"
},
{
"mallCategoryId": "2c9f6c946449ea7e01647ccdb0e0001c",
"mallCategoryName": "饮料",
"bxMallSubDto": [
{
"mallSubId": "2c9f6c946449ea7e01647d09cbf6002d",
"mallCategoryId": "2c9f6c946449ea7e01647ccdb0e0001c",
"mallSubName": "茶饮",
"comments": ""
},
{
"mallSubId": "2c9f6c946449ea7e01647d09f7e8002e",
"mallCategoryId": "2c9f6c946449ea7e01647ccdb0e0001c",
"mallSubName": "水饮",
"comments": ""
},
{
"mallSubId": "2c9f6c946449ea7e01647d0a27e1002f",
"mallCategoryId": "2c9f6c946449ea7e01647ccdb0e0001c",
"mallSubName": "功能饮料",
"comments": ""
},
{
"mallSubId": "2c9f6c946449ea7e01647d0b1d4d0030",
"mallCategoryId": "2c9f6c946449ea7e01647ccdb0e0001c",
"mallSubName": "果汁",
"comments": ""
},
{
"mallSubId": "2c9f6c946449ea7e01647d14192b0031",
"mallCategoryId": "2c9f6c946449ea7e01647ccdb0e0001c",
"mallSubName": "含乳饮料",
"comments": ""
},
{
"mallSubId": "2c9f6c946449ea7e01647d24d9600032",
"mallCategoryId": "2c9f6c946449ea7e01647ccdb0e0001c",
"mallSubName": "碳酸饮料",
"comments": ""
}
],
"comments": null,
"image": "http://images.baixingliangfan.cn/firstCategoryPicture/20190131/20190131170143_361.png"
},
{
"mallCategoryId": "2c9f6c946449ea7e01647cd108b60020",
"mallCategoryName": "乳制品",
"bxMallSubDto": [
{
"mallSubId": "2c9f6c946449ea7e01647dd4ac8c0048",
"mallCategoryId": "2c9f6c946449ea7e01647cd108b60020",
"mallSubName": "常温纯奶",
"comments": ""
},
{
"mallSubId": "2c9f6c946449ea7e01647dd4f6a40049",
"mallCategoryId": "2c9f6c946449ea7e01647cd108b60020",
"mallSubName": "常温酸奶",
"comments": ""
},
{
"mallSubId": "2c9f6c946449ea7e01647dd51ab7004a",
"mallCategoryId": "2c9f6c946449ea7e01647cd108b60020",
"mallSubName": "低温奶",
"comments": ""
}
],
"comments": null,
"image": "http://images.baixingliangfan.cn/firstCategoryPicture/20190131/20190131170151_9234.png"
},
{
"mallCategoryId": "2c9f6c946449ea7e01647ccfddb3001e",
"mallCategoryName": "休闲零食",
"bxMallSubDto": [
{
"mallSubId": "2c9f6c946449ea7e01647dc51d93003c",
"mallCategoryId": "2c9f6c946449ea7e01647ccfddb3001e",
"mallSubName": "方便食品",
"comments": ""
},
{
"mallSubId": "2c9f6c946449ea7e01647dd204dc0040",
"mallCategoryId": "2c9f6c946449ea7e01647ccfddb3001e",
"mallSubName": "面包糕点",
"comments": ""
},
{
"mallSubId": "2c9f6c946449ea7e01647dd22f760041",
"mallCategoryId": "2c9f6c946449ea7e01647ccfddb3001e",
"mallSubName": "糖果巧克力",
"comments": ""
},
{
"mallSubId": "2c9f6c946449ea7e01647dd254530042",
"mallCategoryId": "2c9f6c946449ea7e01647ccfddb3001e",
"mallSubName": "膨化食品",
"comments": ""
},
{
"mallSubId": "2c9f6c94679b4fb10167f7fa132b15e7",
"mallCategoryId": "2c9f6c946449ea7e01647ccfddb3001e",
"mallSubName": "坚果炒货",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7f4bfc415e2",
"mallCategoryId": "2c9f6c946449ea7e01647ccfddb3001e",
"mallSubName": "肉干豆干",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7f5027a15e3",
"mallCategoryId": "2c9f6c946449ea7e01647ccfddb3001e",
"mallSubName": "饼干",
"comments": null
},
{
"mallSubId": "2c9f6c94679b4fb10167f7f530fd15e4",
"mallCategoryId": "2c9f6c946449ea7e01647ccfddb3001e",
"mallSubName": "冲调",
"comments": null
},
{
"mallSubId": "2c9f6c94683a6b0d016846b49436003b",
"mallCategoryId": "2c9f6c946449ea7e01647ccfddb3001e",
"mallSubName": "休闲水果",
"comments": null
}
],
"comments": null,
"image": "http://images.baixingliangfan.cn/firstCategoryPicture/20190131/20190131170200_7553.png"
},
{
"mallCategoryId": "2c9f6c946449ea7e01647cd08369001f",
"mallCategoryName": "粮油调味",
"bxMallSubDto": [
{
"mallSubId": "2c9f6c946449ea7e01647dd2e8270043",
"mallCategoryId": "2c9f6c946449ea7e01647cd08369001f",
"mallSubName": "油/粮食",
"comments": ""
},
{
"mallSubId": "2c9f6c946449ea7e01647dd31bca0044",
"mallCategoryId": "2c9f6c946449ea7e01647cd08369001f",
"mallSubName": "调味品",
"comments": ""
},
{
"mallSubId": "2c9f6c946449ea7e01647dd35a980045",
"mallCategoryId": "2c9f6c946449ea7e01647cd08369001f",
"mallSubName": "酱菜罐头",
"comments": ""
}
],
"comments": null,
"image": "http://images.baixingliangfan.cn/firstCategoryPicture/20181212/20181212115842_9733.png"
},
{
"mallCategoryId": "2c9f6c9468a85aef016925444ddb271b",
"mallCategoryName": "积分商品",
"bxMallSubDto": [ ],
"comments": null,
"image": "http://images.baixingliangfan.cn/firstCategoryPicture/20190225/20190225232703_9950.png"
}
]
}

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

class CategoryBigModel{
String mallCategoryId;//类别编号
String mallCategoryName;//类别名称
List<dynamic> 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']
);
}
} //列表的model
class CategoryBigListModel{
List<CategoryBigModel> data;
CategoryBigListModel(this.data); factory CategoryBigListModel.fromJson(List json){
return CategoryBigListModel(
json.map((i)=>CategoryBigModel.formJson((i))).toList()
);
}
}

category_page.dart

import 'package:flutter/material.dart';
import '../service/service_method.dart';
import 'dart:convert';
import '../model/category.dart'; class CategoryPage extends StatefulWidget {
@override
_CategoryPageState createState() => _CategoryPageState();
} class _CategoryPageState extends State<CategoryPage> {
@override
Widget build(BuildContext context) {
_getCategory();
return Container(
child:Center(
child: Text('分类页面'),
)
);
} void _getCategory() async{
await request('getCategory').then((val){
var data=json.decode(val.toString());
//print(data);
CategoryBigListModel list= CategoryBigListModel.fromJson(data['data']);
list.data.forEach((item)=>print(item.mallCategoryName));
});
}
}

//

class CategoryBigModel{
String mallCategoryId;//类别编号
String mallCategoryName;//类别名称
List<dynamic> 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']
);
}
} //列表的model
class CategoryBigListModel{
List<CategoryBigModel> data;
CategoryBigListModel(this.data); factory CategoryBigListModel.fromJson(List json){
return CategoryBigListModel(
json.map((i)=>CategoryBigModel.formJson((i))).toList()
);
}
}

.

Flutter移动电商实战 --(22)JSON解析和复杂数据模型转换技巧的更多相关文章

  1. Flutter实战视频-移动电商-22.JSON解析和复杂数据模型转换技巧

    22.JSON解析和复杂数据模型转换技巧 json转Model类 创建model文件夹,在里面新建category.dart类 主要根据这个json来分析我们要做成类的样子 { ", &qu ...

  2. Flutter移动电商实战 --(52)购物车_数据模型建立和Provide修改

    根据json数据生成模型类 {"goodsId":"2171c20d77c340729d5d7ebc2039c08d","goodsName" ...

  3. Flutter移动电商实战 --(10)使用FlutterSwiper制作轮播效果

    1.引入flutter_swiper插件 flutter最强大的siwiper, 多种布局方式,无限轮播,Android和IOS双端适配. 好牛X得介绍,一般敢用“最”的一般都是神级大神,看到这个介绍 ...

  4. Flutter移动电商实战 --(23)分类页_左侧类别导航制作

    自动生成dart类 https://javiercbk.github.io/json_to_dart/ 生成的代码 class Autogenerated { String code; String ...

  5. Flutter移动电商实战 --(51)购物车_Provide中添加商品

    新加provide的cart.dart页面 引入三个文件.开始写provide类.provide需要用with 进行混入 从prefs里面获取到数据,判断有没有数据,如果有数据就返转正List< ...

  6. Flutter移动电商实战 --(46)详细页_自定义TabBar Widget

    主要实现详情和评论的tab provide定义变量 自己做一个tab然后用provide去控制 定义两个变量来判断是左侧选中了还是右侧选中了.并定义一个方法来接受参数,修改是左侧还是右侧选中的状态值 ...

  7. Flutter移动电商实战 --(43)详细页_补充首页跳转到详细页

    首页轮播点击到详细页 修改我们轮播这里的代码:SwiperDiy这个类这里的代码 return InkWell( onTap: (){ Application.router.navigateTo(co ...

  8. Flutter移动电商实战 --(36)FlutterToast插件使用

    https://github.com/PonnamKarthik/FlutterToast fluttertoast: ^3.0.1 category_page.dart页面添加引用 import ' ...

  9. Flutter移动电商实战 --(35)列表页_上拉加载更多制作

    右侧列表上拉加载配合类别的切换 上拉加载需要一个page参数,当点击大类或者小类的时候,这个page就要变成1 provide内定义参数 首先我们需要定义一个page的变量 下图是我们之前在首页的时候 ...

随机推荐

  1. 使用百度echarts仿雪球分时图(一)

    第一次写技术博客,有不足的地方希望大家指证出来,我再加以改正,谢谢大家. 之前一直没有找到一个合适的分时图项目,所以决定自己动手撸一个.接触的图表框架不多,在网上看到不少人推荐使用echarts,看了 ...

  2. 查看flask中所有的路由信息(同时查看/设置允许的请求方式get、post)

    查看flask中所有的路由信息(同时查看/设置允许的请求方式get.post) # -*- coding: utf-8 -*- from flask import Flask app = Flask( ...

  3. Java入门学习总结_02

    一:注释 注释主要就是用来解释某句或者某段代码使得其他人调试更加方便.特点是在编译代码的时候不会编译注释, 不管发不发生错误.注释主要分为单行注释//(快捷键ctrl+/).多行注释/* */(快捷键 ...

  4. python3和python2共存

    在window上同时安装py3.5和py2.7,但是命令行敲击python命令后,默认只出现py2.7的信息,敲击python3命令,提示未知的命令. 从网上查了一下,虽然环境变量都添加对了,但是可执 ...

  5. 安装Vue脚手架和创建一个简单的Demo

    https://www.cnblogs.com/pengjunhao/p/6762141.html https://www.cnblogs.com/yanxulan/p/8978732.html 查看 ...

  6. [GDOI2014]采集资源

    题目概述 题目描述 魔兽争霸3中,战略资源的采集通过使用农民.苦工.小精灵以及寺僧来进行. 在魔兽争霸4的开发中,玻璃渣觉得这种模式太过单一,于是他们想添加更多的单位来使采集的模式更加丰富. 在新的模 ...

  7. 分布式可扩展存储系统 BaikalDB

    BaikalDB是一个分布式可扩展的存储系统,支持PB级结构化数据的随机实时读写. 提供MySQL接口,支持常用的SELECT,UPDATE,INSERT,DELETE语法.提供各种WHERE过滤.G ...

  8. 关于pageHelper无法查到总数踩到的坑

    问题代码 PageHelper.startPage(pageNum,pageSize); List<pojoVo> pojoVo=robotService.getPageList(); P ...

  9. HDU 3824/ BZOJ 3963 [WF2011]MachineWorks (斜率优化DP+CDQ分治维护凸包)

    题面 BZOJ传送门(中文题面但是权限题) HDU传送门(英文题面) 分析 定义f[i]f[i]f[i]表示在iii时间(离散化之后)卖出手上的机器的最大收益.转移方程式比较好写f[i]=max{f[ ...

  10. springboot项目没错,但就是报红叉

    1.报错原因: Description Resource Path Location TypeCannot change version of project facet Dynamic Web Mo ...