Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Json 颤振/飞镖_Json_Flutter_Dart_Serialization - Fatal编程技术网

Json 颤振/飞镖

Json 颤振/飞镖,json,flutter,dart,serialization,Json,Flutter,Dart,Serialization,我对颤振和Dart都是新手,如果可以的话,我会尝试将一些android studio应用程序转换为使用颤振。我正在尝试解析一些简单的json,以了解所有dart/FLUTER特性如何帮助我 我要写入的类结构是: class Company extends Salinas { final String name; Company({this.name}) : super(); factory Company.fromJson(Map<String, dynamic> js

我对颤振和Dart都是新手,如果可以的话,我会尝试将一些android studio应用程序转换为使用颤振。我正在尝试解析一些简单的json,以了解所有dart/FLUTER特性如何帮助我

我要写入的类结构是:

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);
}
以及:

当我查看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;
然后你就可以自由打印了

print(company.id);
print(company.name);

如果答案有帮助,您可以向上投票:)
   print(company.id) is 1
   print(company.name) is Acme;
class Company {
  int id;
  String name;

  Company({this.id, this.name});

  Company.fromJson(Map<String, dynamic> json) {
    id = json['id'];
    name = json['name'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['id'] = this.id;
    data['name'] = this.name;
    return data;
  }
}
Company company = Company.fromJson(response);
print(company.id);
print(company.name);