json - Flutter/Dart Json序列化

标签 json flutter dart serialization

我对Flutter和Dart都是陌生的,如果可以的话,我尝试将一些Android Studio应用程序转换为使用flutter。我正在尝试解析一些简单的json,以了解所有的dart / flutter功能如何为我提供帮助。
我要写的类结构是:

class Company extends Salinas {
  final String name;
  Company({this.name}) : super();

  factory Company.fromJson(Map<String, dynamic> json) => _$CompanyFromJson(json);
  Map<String, dynamic> toJson() => _$CompanyToJson(this);
}

class Salinas {
  final int id;
  Salinas({this.id});

  factory Salinas.fromJson(Map<String, dynamic> json) => _$SalinasFromJson(json);
  Map<String, dynamic> toJson() => _$SalinasToJson(this);
}
json字符串很简单
 {"id":1,"name":"Acme"}
和:
 print(company.id)is null
 print(company.name) is Acme;
当我查看Company.g.dart文件时,没有引用扩展类Salinas吗?
有没有办法做到这一点?
我显然缺少了一些东西。

最佳答案

您需要在子构造函数中定义扩展类属性,如下所示:

  class Company extends Salinas {
     final String name;
     Company({id, this.name}) : super(id: id);
   }
在您看到此结果之后:
   print(company.id) is 1
   print(company.name) is Acme;

关于json - Flutter/Dart Json序列化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64450870/

相关文章:

dart - 如何在 Dart 中初始化 mixin 的不可变数据?

javascript - 尝试定义函数时,位置 1 出现 JSON 未定义错误

mysql - 如何将 JSON 对象转换为 MySQL 行?

java - 如何使用 Jackson 解析不合格的 JSON 数组?

flutter - 如何使用填充水平滚动到屏幕的最后/开始?

flutter - 如何使用RawMaterialButton中的onLongPressed属性连续增加或减少值?

json - 列表中的列表JSON解析在 flutter

flutter - 如何在flutter中设置布局元素的背景颜色

flutter - 如何在flutter中等待初始数据加载

flutter - flutter 的数学表达式和波兰语字符