【问题标题】:how to make a list in null safe version in flutter? [duplicate]如何在颤动中制作空安全版本的列表? [复制]
【发布时间】:2021-09-26 20:30:17
【问题描述】:

我正在创建一个用于调用 API 的模态类,但出现错误

启用空安全时,默认的“列表”构造函数不可用。 尝试使用列表文字,“List.filled”或“List.generate”。

我在 StackOverflow 上研究了一些答案,但我不明白答案。

class Autogenerated {
  bool? status;
  String? message;
  List<Data>? data;

  Autogenerated({required this.status,required this.message,required this.data});

  Autogenerated.fromJson(Map<String, dynamic> json) {
    status = json['status'];
    message = json['message'];
    if (json['data'] != null) {
      data = new List<Data> (); ///error List<Data>()
      json['data'].forEach((v) {
        data?.add(new Data.fromJson(v));
      });
    }
  }
///other code
}

【问题讨论】:

  • 列表构造函数仍然可以用作List.empty(growable: true),但您也可以使用以下Ojan 提到的简写[]
  • 不使用.forEach,你可以这样做:data = [for (var v in json['data']) Data.fromJson(v)];

标签: flutter dart


【解决方案1】:

就这样改

class Autogenerated {
  bool? status;
  String? message;
  List<Data>? data;

  Autogenerated({required this.status,required this.message,required this.data});

  Autogenerated.fromJson(Map<String, dynamic> json) {
    status = json['status'];
    message = json['message'];
    if (json['data'] != null) {
      data = []; 
      json['data'].forEach((v) {
        data?.add(new Data.fromJson(v));
      });
    }
  }
///other code
}

【讨论】:

  • 感谢您的精彩回答
  • @LutaayaHuzaifahIdris 乐于提供帮助
猜你喜欢
  • 1970-01-01
  • 2021-05-18
  • 2019-03-14
  • 2020-09-25
  • 2019-01-25
  • 2019-09-26
  • 1970-01-01
  • 1970-01-01
  • 2013-03-01
相关资源
最近更新 更多