Flutter 学习(九)json_serializable 自动反序列化

json_serializable 自动反序列化

序言

众所周知flutter中提供了JSON 转 Map的方法,而反序列化是需要手写的;在项目中一般都会有字段比较多的情况,例如用户信息表字段是比较多的,在这样的情况下手动反序列化是比较费事的,而且容易出错。这个时候呢Flutter团队给我们推荐了json_serializable,下面我们就介绍一下使用方法。

第一步 集成插件

在这里插入图片描述
注意:

build_runner: ^1.1.3 //用于生成代码
json_serializable: ^2.0.2

这两个插件是开发使用,所以放在dev这里。

第二步 创建model

为了更便捷 的使用json_serializable库,我们使用这位大牛提供的生成插件生成代码:

在这里插入图片描述

  1. List item
  2. 类名称可修改为自己使用的类名称。
  3. 将右侧的代码复制到自己项目中(在自己项目中先创建 xxx.dart文件)。
  4. 复制进去的代码会报错,先忽略掉。
第三步 生成文件

打开cmd 切换到项目根目录下运行:

flutter packages pub run build_runner watch

等待命令运行完毕之后,项目目录下会生成xxx.g.dart文件:
在这里插入图片描述

第四步 调用

在需要使用的文件中引入:

import “user.dart”

然后调用 fromJson方法:

_userInfo = UserInfo.fromJson(jsonDecode(user));

最后就可以随心所欲的通过_userInfo.xxx获取值了。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值