flutter - 使用颤振 2.+ 的可空值
问题描述
我创建了一个模型类来与 dio 库一起使用并获取数据,并且在颤振 2.+ 中,他们引入了 null safy,当我创建模型类时,我得到了错误以使值可以为空,它通过添加来处理原始类型?但是对于模型本身,我不知道该怎么做,如果有人可以提供帮助,将不胜感激,谢谢
- 这是我的安卓工作室的截图
解决方案
从flutter 2+开始,他们提供了可空值,因为空值显示错误。您需要定义 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;
}
}
推荐阅读
- java - 将 Hashmap 恢复为以前的值
- sas - 在关键字之前和之后拉字符串
- angular - 提交后如何清除输入(重置表单)
- sql-server - 从文件夹中插入文件名并从文件名中检索日期 - SSIS
- r - 按组匹配另一个变量的第一行的变量的值
- django - Django 表单使用与 moels 字段不同名称的 html 元素
- node.js - 角度和节点应用程序中的 CORS 不起作用
- azure - 更新 Azure Service Fabric 证书。为什么是一级证书和二级证书?
- c++ - 在 C++ 中可以有一个虚拟类型吗?
- python - 如何计算图像噪声的标准偏差?