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

embedded/2024/9/25 9:30:49/

目录

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

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

安装

dependencies:
json_annotation: ^4.8.1dev_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.1dev_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创建数据模型

源码


http://www.ppmy.cn/embedded/9294.html

相关文章

一次配置Docker环境的完整记录

一次配置Docker环境的完整记录 Docker环境搭建报错与解决报错一报错二报错三 Docker环境搭建 本节介绍了一次配置docker环境的完整记录: 编写Dockerfile文件: FROM pytorch/pytorch:1.10.0-cuda11.3-cudnn8-develRUN rm /etc/apt/sources.list.d/cuda.l…

完成学校官网页面制作

<!DOCTYPE html> <html lang"en"> <head> <meta charset"UTF-8"> <title>教务系统</title> <style> .wap{ margin:0 auto; width:955px; } .top{ height:150px; padding-left:85px; …

【LeetCode热题100】【链表】随机链表的复制

题目链接&#xff1a;138. 随机链表的复制 - 力扣&#xff08;LeetCode&#xff09; 给你一个长度为 n 的链表&#xff0c;每个节点包含一个额外增加的随机指针 random &#xff0c;该指针可以指向链表中的任何节点或空节点&#xff0c;请你深拷贝这个链表 非常妙的思路&…

qt5-按字节读取并解析含属性的xml文件

参考&#xff1a; 对XML文件读取和编辑2-QXmlStreamReader读取 - 知乎 https://zhuanlan.zhihu.com/p/358862429 本地环境&#xff1a; win10专业版&#xff0c;64位&#xff0c;Qt 5.12 代码已测试通过。 问题描述 需要按字节读取一个文档&#xff0c;解析其中具有xml格式的…

大白话!go语言中的指针、指针类型的方法接收器

go语言中的指针使用起来的比较简单。应用如下&#xff1a; 1.普通的对象取地址&#xff0c;获取对象值 符号&&#xff0c;取地址符&#xff0c;可以取变量的地址&#xff0c;或结构体对象的地址等。符号*&#xff0c;是从地址中取值&#xff08;根据栈中存储地址&#xf…

实现I.MX6ULL开发板与Windows和Ubuntu系统之间的通信

虚拟机与主机之间的连接方式确实包括桥接模式、NAT模式和仅主机模式。 桥接模式&#xff08;Bridged&#xff09;&#xff1a;在桥接模式下&#xff0c;虚拟机通过虚拟交换机直接连接到主机的物理网络上&#xff0c;就像一台独立的物理机器一样&#xff0c;拥有自己的IP地址&a…

Kotlin语法快速入门--条件控制和循环语句(2)

Kotlin语法入门–条件控制和循环语句&#xff08;2&#xff09; 文章目录 Kotlin语法入门--条件控制和循环语句&#xff08;2&#xff09;二、条件控制和循环语句1、if...else2、when2.1、常规用法2.2、特殊用法--并列&#xff1a;2.3、特殊用法--类型判断&#xff1a;2.4、特殊…

设计模式在芯片验证中的应用——策略

1. 策略模式 策略模式是一种行为设计模式&#xff0c; 它能让你定义一系列算法&#xff0c; 并将每种算法分别放入独立的类中&#xff0c; 以使算法的对象能够相互替换。 在RTL设计中可能包含了复杂的多个访问仲裁逻辑&#xff0c;使用了多种算法来确定访问内存优先级顺序&am…