关于CommonModel字段数量问题

来源:12-3 首页大接口相关模型实现【Model层设计】

慕运维5474175

2021-06-21

CommonModel里面有5个字段, 但是bannerList里面只有icon和url两个字段, 如果都按照CommonModel解析,服务端传来的json少字段,这样不就空异常了吗?

写回答

1回答

CrazyCodeBoy

2021-06-22

同学你好,如果你的项目已经开启了空安全,那么可以参考下面方式进行空安区适配:

class CommonModel {
  final String? icon;
  final String? title;
  final String url;
  final String? statusBarColor;
  final bool? hideAppBar;

  CommonModel(
      {this.icon,
      this.title,
      required this.url,
      this.statusBarColor,
      this.hideAppBar});
  //命名工厂构造函数必须要有返回值,类似static 函数无法访问成员变量和方法
  factory CommonModel.fromJson(Map<String, dynamic> json) {
    return CommonModel(
      icon: json['icon'],
      title: json['title'],
      url: json['url'],
      statusBarColor: json['statusBarColor'],
      hideAppBar: json['hideAppBar']
    );
  }
}

1.对于可空的字段通过`?`进行修饰

2.对于不可空的字段,需要在构造方法中在对应的字段前面添加`required`修饰符来表示这个参数是必传参数


0
0

Flutter从入门到进阶 实战携程网App 一网打尽核心技术

解锁Flutter开发新姿势,,系统掌握Flutter开发核心技术。

4788 学习 · 3270 问题

查看课程