使用到的库
dependencies:
json_annotation: ^4.9.0 # json序列化
dev_dependencies:
build_runner: ^2.6.0 # json序列化
json_serializable: ^6.10.0 # json序列化
示例代码
import 'package:json_annotation/json_annotation.dart';
part 'user.g.dart'; // 自动生成的文件
@JsonSerializable()
class User {
final int id;
final String name;
final String email;
User({
required this.id,
required this.name,
required this.email,
});
/// 从 JSON 创建 User 对象
factory User.fromJson(Map<String, dynamic> json) => _$UserFromJson(json);
/// 将 User 对象转为 JSON
Map<String, dynamic> toJson() => _$UserToJson(this);
}
执行命令行
构建:
flutter pub run build_runner build
监听变化,自动构建:
flutter pub run build_runner watch