问题标签 [json-serializable]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
260 浏览

flutter - JsonSerializable - fromJson 抛出 _InternalLinkedHashMap嵌套对象异常

我已使用此build.yaml配置允许将嵌套对象解析为 json:

它似乎确实有效,因为toJson嵌套对象工作正常。然后我尝试使用https://pub.dev/packages/json_serializable从 json 创建一个类实例:

我得到了这个例外:

抛出异常:类型 '_InternalLinkedHashMap<dynamic, dynamic>' 不是类型转换中类型 'Map<String, dynamic>' 的子类型

这是 的值json

在此处输入图像描述

红色覆盖的值是字符串。当user_credential_entity.passwordanduser_credential_entity.emailAddressnull时,没有错误。

我认为这是因为它user_credential_entity是一个嵌套的 JsonSerializable 对象。但是toJson有效,但fromJson没有。

父类:

子类:

错误所在的实际代码行在这里:

在此处输入图像描述

的值json['userCredentialEntity']不是 aMap<String, dynamic>吗?有点像我。

0 投票
2 回答
324 浏览

json - 颤振json_serializable丢失文件

我似乎不明白为什么它显示错误我创建了两个不同的 .g.dart 文件

但对于这个文件,它显示了缺失的部分。[警告] lib/Model/Supermodel.dart 上的 json_serializable:json_serializable: 缺少“part 'Supermodel.g.dart';”。

0 投票
0 回答
90 浏览

php - Laravel php 多个 JsonSerializable

我有复杂的对象模型,由其他对象组成,我在每个对象中都使用了 JsonSerializable。举个简化的例子:

对于 API,我只是做得到return new JsonResponse($carPark);很好的 json。我想将此对象作为 json 保存在 DB 中,但我不想保存'price'值。

我的问题是:如何让我的 API 对象传递一个 json 结构而 db 传递另一个 json 结构?

PS 对于 Laravel DB ORM,我使用 Doctrine。

0 投票
1 回答
291 浏览

flutter - 如何在 Dart 中使用 json_serializable 转换类型

有没有办法使用 json_serializable将双精度值从 json 转换为 int 字段以生成代码?也许一些注释?我自己还找不到这样的东西。

从这样的json

像这样上课

0 投票
0 回答
365 浏览

flutter - 颤振改造生成器 - 改造生成文件中的错误

我在我的颤振应用程序中使用改造,并且我也在使用 json_serialzable 来生成模型类。这是我的发布规范:

并且当我运行时flutter pub run build_runner build->它成功生成了包含fromJson和toJson的改造服务和模型的零件文件,但是在服务类中出现错误,即响应没有fromJson方法(响应不是模型类(例如下图中的用户模型):

在此处输入图像描述

我尝试在构建时将 pubspec 中的版本更改为任何但相同的结果。任何帮助都非常感谢,因为我坚持这一点,我更喜欢使用带有 dio 而不是斩波器的改造。

0 投票
1 回答
234 浏览

firebase - 在 nullsafety 之后使用带有 json_serializable 的 firestore

我正在使用 json_serializable 和 firestore。json_serializable 创建一个以 Map<String, dynamic> 作为参数的工厂方法,但在 nullsafety 更改后,firestore 开始返回 Map<String, dynamic>?作为文档数据,现在我无法调用 json_serializable 工厂来映射我的 Firestore 类型,因为显示此错误消息:The argument type 'Map<String, dynamic>?' can't be assigned to the parameter type 'Map<String, dynamic>'

有人可以帮我弄这个吗?我不能再将 json_serializable 与 firestore 一起使用吗?

我写了这个例子:

0 投票
3 回答
4298 浏览

flutter - Flutter json_serializable模型错误:未处理的异常:类型'Null'不是类型转换中'String'类型的子类型

我正在尝试从服务器中获取数据,并且我正在使用 json_serializable 作为我的数据模型。我成功获取了数据,但是当需要在数据列表中转换 json 时,我收到此错误:未处理的异常:类型“Null”不是类型转换中“字符串”类型的子类型。我不知道怎么解决。这是我的获取功能

这是我的模型

这是我从服务器获得的数据

谢谢您的帮助

0 投票
1 回答
1181 浏览

flutter - 由于类型,无法生成 toJson 代码

尝试使用 toJson 函数生成冻结的数据模型时,出现以下错误。

这开始发生在 Flutter 2.0 及更高版本中。类型已定义并且编译良好,当我尝试生成代码时出现该错误。我在用:

颤振 2.0.3

冻结:0.12.7 freezed_annotation:0.12.0

json_annotation:3.1.1 json_serializable:3.5.1

build_runner:1.11.1

我还使用 null-safe 颤振项目将所有内容更新到最新版本,但它仍然会发生,所以我知道这不是 null 安全问题。或者至少我可以假设当项目更新为空安全时它不起作用。

这是最小的可重现模型集

我在这里有一个问题。超过 21 天没有回答,甚至只是看了看。我不知道这是冻结还是 json 可序列化。这是发生错误时生成器输出的 --verbose 日志。我删除了一些重复的日志以使其更短,因为它有很多文本。

我希望能够生成我的模型代码,而不会出现已定义类型的类型错误。

0 投票
2 回答
1908 浏览

flutter - Freezed 和 json_serializable:如何使用自定义转换器

我想将自定义转换器添加到这个答案中的冻结类。

我用这段代码试了一下:

但它没有用。任何想法都非常受欢迎!

为了您的兴趣,这是我的转换器:

谢谢 :-)

0 投票
1 回答
772 浏览

flutter - Flutter:使用 json_serializable 将 json 转换为模型时出现问题

假设有两个模型UserCity

现在假设在 API 调用期间,我们有一个用户模型,但在城市对象模型中,我们只得到id而不是name。像这样的东西

但是由于 json_serializable 和 json_annotation 的默认性质。此 JSON 未映射到 User 模型,在映射期间,它会引发异常。
Null 类型不是 String 类型的子类型。(因为这里的城市对象中缺少名称键)

但正如我们已经在 User 对象中声明的那样,City 是可选的,我希望它应该解析带有 city 为 null 的 User JSON。

任何帮助或解决方案将不胜感激,谢谢