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
相关推荐
Carson带你学Android1 小时前
Compose 终于上线 FlexBox:换行与弹性伸缩 都轻松搞定!
android·composer
私人珍藏库1 小时前
[Android] 三维山水全景地图-3D地形全景观测地图
android·3d·app·工具·软件·多功能
dengyuezhe80601 小时前
《C++ 异常机制与智能指针:从原理到实现》
android·java·c++
Wonderful U2 小时前
Python+Django实战|企业办公用品申领管理系统:物资入库、库存预警、申领审批、归还登记、损耗统计、供应商对账
android·python·django
plainGeekDev2 小时前
网络状态监听 → ConnectivityManager + Flow
android·java·kotlin
楠目2 小时前
CVE-2013-4547 Nginx URI解析漏洞利用总结
android
勤劳打代码2 小时前
翻江倒海——滚动布局下拉视图管理
flutter·前端框架·开源
spmcor2 小时前
Flutter 学习笔记 (6):路由与导航 —— 从基础 push/pop 到 go_router
flutter
网管NO.12 小时前
MySQL 8.0 JSON 操作 | 新增 / 查询 / 修改,适配新兴业务
数据库·mysql·json
Coffeeee2 小时前
不能用公司的打包机,AI帮我实现了一套比打包机更好用的Android包构建/分发流程
android·人工智能·ai编程