Flutter:带可选参数的等价道具getter



我有一个扩展了Equatable并包含可选参数的对象。如果我尝试将这个参数添加到props getter中,就会得到错误The element type 'String?' can't be assigned to the list type 'Object'。但是,不添加它将意味着该形参中有不同值或没有值的对象之间相等。

class Company extends Equatable {
final String name;
final String? logo;
....
@override
List<Object> get props {
return [
name,
logo, //error here
....

合适的解决方案是什么?

基础Equatable.propsgetter被声明为返回List<Object?>,而不是List<Object>。修改您的覆盖匹配将允许您存储null

我建议用dynamic代替Object

最新更新