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.修改模板中的几个部分
- 修改类名为自己的
- 修改_$TokenFromJson为自己的类名称+FromJson
- 修改_$TokenToJson为自己的类名称+ToJson
- part 'token.g.dart'; 把token换为自己的类名
3.安装依赖
dart
json_serializable: ^6.7.1
build_runner: ^2.4.7
json_annotation:
- 在项目根目录执行
dart
flutter pub run build_runner build