插件地址:https://pub.dev/packages/freezed

使用 freezed 比单纯的 json to dart 在功能上是有加强的。

大致有如下几点:

  • 减少 model 代码量
  • 不可变类型定义 @freezed
  • 可变类型 @unfreezed
  • copyWith 方法复制
  • copyWith + 深拷贝
  • operator == 操作
  • toString 方法
  • 空对象支持
  • 对数据(反)序列化

json 转 freezed

在线地址推荐:https://app.quicktype.io/

使用步骤

1、第一步:安装包

flutter pub add freezed_annotation
flutter pub add --dev build_runner
flutter pub add --dev freezed
flutter pub add json_annotation
flutter pub add --dev json_serializable

2、第二步:格式化你的json模型, 推荐网址:https://www.sojson.com/, 复制到 https://app.quicktype.io

json模型.png
开始转换 freezed 格式
输入模型名称,转换目标 dart

设置 freezed 格式转换
再右上角, 设置需要选项
20231030110348.png

复制代码

3、第三步:新建一个model文件,把复制代码粘贴进来
20231030110811.png

4、第四步:执行命令生成

dart run build_runner build -d
Last modification:October 30, 2023
如果觉得我的文章对你有用,请随意赞赏