flutter json转实体类

1.先来一个基础模板类

dart 复制代码
import 'package:json_annotation/json_annotation.dart';
 
// 这个文件是自动生成的,必须声明part
part 'token.g.dart';
 
// 核心注解,表示这个类需要生成序列化代码
@JsonSerializable()
class Token {
  final String accessToken;
  final int expiresIn;
  final String refreshToken;
 
  Token({required this.accessToken, required this.expiresIn, required this.refreshToken});
 
  /// 从 JSON 映射创建 Token 实例的工厂构造函数
  factory Token.fromJson(Map<String, dynamic> json) => _$TokenFromJson(json);
 
  /// 将 Token 实例转换为 JSON 映射的方法
  Map<String, dynamic> toJson() => _$TokenToJson(this);
}

2.修改模板中的几个部分

  1. 修改类名为自己的
  2. 修改_$TokenFromJson为自己的类名称+FromJson
  3. 修改_$TokenToJson为自己的类名称+ToJson
  4. part 'token.g.dart'; 把token换为自己的类名

3.安装依赖

dart 复制代码
  json_serializable: ^6.7.1
  build_runner: ^2.4.7
  json_annotation:
  1. 在项目根目录执行
dart 复制代码
flutter pub run build_runner build
相关推荐
帅次1 天前
Android 高级工程师面试:Java 基础知识 近1年高频追问 22 题
android·java·面试
私人珍藏库1 天前
[Android] zip解压缩管理-全格式压缩包一键解压+打包
android·app·生活·工具·多功能
雨白1 天前
C语言:动态内存分配
android
Android-Flutter1 天前
android compose 自定义Painter绘制图形 使用
android·kotlin·compose
我是一颗柠檬1 天前
【Java项目技术亮点】覆盖索引与索引下推优化
android·java·开发语言
vigor5121 天前
MySQL通过Mango实现分库分表
android·数据库·mysql
ShiXZ2131 天前
PDF-OCR文件识别篇(七):数据入库
java·pdf·json·ocr·springboot
阿pin1 天前
Android随笔-Zygote中fork究竟是什么?
android·zygote·fork
Go-higher1 天前
DriverTest 驾考知识卡片学习助手 —— 一款基于 Jetpack Compose 的现代 Android 学习APP
android·学习