【Flutter】序列化方案之命令行生成model

时间:2024-04-19 15:34:44

文章目录

  • 一、json_model 一行命令,将json文件转为Dart model类及.g.dart。
    • 安装
    • 使用
  • 二、build_runner 手动写model类,命令行生成.g.dart序列化类
    • 安装
    • 使用
  • 参考

一、json_model 一行命令,将json文件转为Dart model类及.g.dart。

安装

dependencies:
json_annotation: ^4.8.1
    
dev_dependencies:
json_model: ^1.0.0
json_serializable: ^6.7.1

使用

  1. 在工程根目录下创建一个名为 jsons 的目录;
  2. 创建或拷贝json文件到 jsons 目录中 ;
  3. flutter packages pub run json_model 命令生成Dart model类,生成的文件默认在"lib/models"目录下

二、build_runner 手动写model类,命令行生成.g.dart序列化类

安装

dependencies:
json_annotation: ^4.8.1

dev_dependencies:
build_runner: ^2.4.9
json_serializable: ^6.7.1

使用

  1. lib下新建models文件夹,创建model类,根据需要执行下面命令行
  2. 一次性构建
    flutter packages pub run build_runner build
  3. 删除后重新构建
    flutter packages pub run build_runner build --delete-conflicting-outputs
  4. 文件监听,自动为后续创建得实体类生成对应得.g.dart文件
    flutter packages pub run build_runner watch

参考

  • Pub: json_model
  • 使用json_annotation创建数据模型

源码