使用 flutter 2.+ 的可空值
Nullable values using flutter 2.+
我创建了一个模型 class 与 dio 库一起使用并获取数据,在 flutter 2.+ 中,他们引入了 null safy,当我创建模型时 class 我得到了错误为了使值可以为空,它通过添加 ?但是对于模型本身,我不知道该怎么做,如果有人能提供帮助,将不胜感激,谢谢
- 这是我的 android 工作室的截图
从 flutter 2+ 开始,他们提供了 nullable,因为 null 值显示错误。您需要定义 const 默认值或附加 ?
运算符以指定变量是 Nullable
类型。
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 与 dio 库一起使用并获取数据,在 flutter 2.+ 中,他们引入了 null safy,当我创建模型时 class 我得到了错误为了使值可以为空,它通过添加 ?但是对于模型本身,我不知道该怎么做,如果有人能提供帮助,将不胜感激,谢谢
- 这是我的 android 工作室的截图
从 flutter 2+ 开始,他们提供了 nullable,因为 null 值显示错误。您需要定义 const 默认值或附加 ?
运算符以指定变量是 Nullable
类型。
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;
}
}