Flutter 使用颤振2和#x2B;

Flutter 使用颤振2和#x2B;,flutter,http,dart,dart-null-safety,Flutter,Http,Dart,Dart Null Safety,我已经创建了一个模型类,用于dio库和获取数据,在Flatter 2中,他们引入了null安全,当我创建模型类时,我得到了一个错误,使值可以为null,它通过添加?但是对于模型本身,我不知道怎么做,如果有人能帮忙的话,我将不胜感激,谢谢 这是我的android工作室的截图 从Flatter 2+中,他们提供了nullable,因为null值显示错误。您需要定义常量默认值或附加?运算符,以指定变量为可为空的类型 class SearchPhotoRespo { int? _total;

我已经创建了一个模型类,用于dio库和获取数据,在Flatter 2中,他们引入了null安全,当我创建模型类时,我得到了一个错误,使值可以为null,它通过添加?但是对于模型本身,我不知道怎么做,如果有人能帮忙的话,我将不胜感激,谢谢

  • 这是我的android工作室的截图

从Flatter 2+中,他们提供了nullable,因为null值显示错误。您需要定义常量默认值或附加
运算符,以指定变量为
可为空的类型

class SearchPhotoRespo {
  int? _total;
  int? _totalPages;
  List<Results>? _results;

  int? get total => _total;
  int? get totalPages => _totalPages;
  List<Results>? get results => _results;

  SearchPhotoRespo({
      int? total, 
      int? totalPages, 
      List<Results>? results}){
    _total = total;
    _totalPages = totalPages;
    _results = results;
}

  SearchPhotoRespo.fromJson(Map<String, dynamic> json) {
    _total = json["total"];
    _totalPages = json["total_pages"];
    if (json["results"] != null) {
      _results = [];
      json["results"].forEach((v) {
        _results?.add(Results.fromJson(v));
      });
    }
  }

  Map<String, dynamic> toJson() {
    var map = <String, dynamic>{};
    map["total"] = _total;
    map["total_pages"] = _totalPages;
        if (_results != null) {
      map["results"] = _results?.map((v) => v.toJson()).toList();
    }
    return map;
  }

}

       
class-SearchPhotoRespo{
国际单位总数;
整版?\u总页数;
列出结果;
int?get total=>\u total;
int?获取totalPages=>\u totalPages;
列表?获取结果=>\u结果;
搜索照片({
整数?总数,
整版?总页数,
列表(结果}){
_总计=总计;
_总页数=总页数;
_结果=结果;
}
SearchPhotoRespo.fromJson(映射json){
_total=json[“total”];
_totalPages=json[“total_pages”];
如果(json[“结果”]!=null){
_结果=[];
json[“结果”].forEach((v){
_结果?.add(results.fromJson(v));
});
}
}
映射到JSON(){
var-map={};
地图[“总计”]=总计;
地图[“总页数”]=总页数;
如果(_results!=null){
map[“results”]=\u results?.map((v)=>v.toJson()).toList();
}
返回图;
}
}

从我的评论中可以看出,您还定义了调用的可为null的成员变量,如:int_全部的智力_总页数;名单_结果;我还使用了late关键字,它也很有效,谢谢,但我有一个函数,它也返回一个未来,它要求我使它为空,这是一个屏幕截图