[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XA5ys5Cw-1626221990217)(https://ducafecat.tech/2021/07/14/translation/automatic-generate-json-serializable-in-flutter/2021-07-14-08-07-05.png)]
老铁记得 转发 ,猫哥会呈现更多 Flutter 好文~~~~
微信群 ducafecat
b 站 https://space.bilibili.com/404904528
原文
https://medium.com/flutterdevs/automatic-generate-json-serializable-in-flutter-4c9d2d23ed88
代码
参考
- https://pub.dev/packages/json_serializable
- https://pub.dev/packages/json_annotation
正文
Flutter 是一个可移植的 UI 工具包。换句话说,它是一个全面的应用软件开发工具包(SDK) ,包括小部件和工具。Flutter 是一个免费的开源工具,用于开发移动、桌面和 web 应用程序。Flutter 是一种跨平台的开发工具。这意味着用同样的代码,我们可以同时创建 ios 和 android 应用程序。这是在整个过程中节省时间和资源的最佳方式。
在本文中,我们将探索使用 json_serializable 包和 json_annotation,并了解如何使用它将我们的模型解析到 JSON 并通过序列化生成我们自己的代码。我们开始吧。
JSON Serializable
JSON (JSON)是一种数据格式,它将对象编码成字符串。这种数据可以很容易地在服务器和浏览器之间转换,也可以在服务器和服务器之间转换。序列化是将对象转换为相同字符串的过程。为此,我们使用 json 序列化包,但是它可以根据 json 注释库提供的注释为您生成一个模型类。
Implementation
每当我们需要建立模型和工厂的时候。因为模型不会总是改变,所以你不需要总是改变模型。因此,为了使用 JSON,我们必须添加下面解释的一些包。
- 这是提供给 Dart 构建系统的。当它在用 json_annotation 定义的类中找到带注释的成员时,就会生成代码
- 它定义了 JSON_serializable 用于创建 JSON 序列化、反序列化类型的代码的注释
- 我们使用 build_runner 包来生成使用 dart 代码的文件
现在让我们看看如何将所有这些包添加到 pubspec 中。
- 第一步: 添加依赖项
将依赖项添加到 pubspec ー yaml 文件。
---
dependencies:
flutter:
sdk: flutter
# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^0.1.2
json_annotation: ^4.0.1
dev_de