gpt4 book ai didi

flutter - 如何在 Dart 中正确声明类的 List 类型属性?

转载 作者:行者123 更新时间:2023-12-05 06:02:01 30 4
gpt4 key购买 nike

我是 Flutter 的新手,正在尝试声明一个 Folder 类,其中一个属性是子文件夹列表。我无法做出正确的声明,语言给我带来了各种错误。有人可以帮我解决这个问题吗?

class Folder {
final int id;
final String title;
final List<Folder> children;

Folder ({
this.id = 0,
this.title = '',
this.children
});

factory Folder.fromJson(Map<String, dynamic> parsedJson) {
Iterable i = parsedJson['children'];

return new Folder(
id: parsedJson['id'] ?? '',
title: parsedJson['title'] ?? '',
children: List<Folder>.from(i.map((model) => Folder.fromJson(model)))
);
}
}

这为 children 属性提供了以下错误:参数“children”由于其类型不能具有“null”值,但隐式默认值为“空”。

有时文件夹没有子文件夹,所以我不想创建一个@required 参数,只是一个可选参数。

最佳答案

我猜您使用的是启用了空安全的最新版本的 Dart?
如果是这种情况,请以这种方式声明您的 children var

List<Folder>? children;

应该可以解决问题。

另一个解决方案是更新你的构造函数

  Folder ({
this.id = 0,
this.title = '',
this.children = []
});

关于flutter - 如何在 Dart 中正确声明类的 List 类型属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67064076/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com