【发布时间】:2022-06-24 21:47:06
【问题描述】:
我有一个奇怪的问题。我正在尝试使用冻结包生成模型。我嵌套了两个使用不同键值相互连接的类。
这是我将使用的主要类。参数来自data键。
@freezed
class CustomClass with _$CustomClass {
@JsonSerializable(explicitToJson: true)
const factory CustomClass({
@JsonKey(name: "data.item1") required final String item1,
@JsonKey(name: "data.item2") required final CustomClass1 item2,
}) = _CustomClass;
factory CustomClass.fromJson(Map<String, dynamic> json) => _$CustomClassFromJson(json);
}
这是我将用来生成嵌套模型的子类。
@freezed
class CustomClass1 with _$CustomClass1 {
const factory CustomClass1({
required String name,
required num price,
}) = _CustomClass1;
factory CustomClass1.fromJson(Map<String, dynamic> json) => _$CustomClass1FromJson(json);
}
当我尝试对响应对象 data.item2 建模时,它给出了以下错误。
I/flutter (25343): NoSuchMethodError: The method '[]' was called on null.
I/flutter (25343): Receiver: null
I/flutter (25343): Tried calling: []("name")
大家有什么建议吗?
注意:我的回复正文 ->
{
"data": {
"item1": "abcd",
"item2": { "name": "object_name", price: 52.90 }
},
"error": {}
}
【问题讨论】:
标签: flutter freezed flutter-freezed