【发布时间】:2020-10-30 05:09:21
【问题描述】:
我正在使用一个 StatefulWidget,它的构造函数包含一个 Object,比如
class X extends StatefulWidget {
X({this.o});
Object o;
...
}
有时会发生这种情况,o 这个对象发生了变化,但小部件X 没有更新,所以我不得不在构造函数中添加一个 ObjectKey:
class X extends StatefulWidget {
X({this.o, this.key});
Object o;
ObjectKey key;
...
}
现在每次调用构造函数时,我都必须调用X(o: o, key: ObjectKey(o));。有没有更好的方法来做到这一点?如果构造函数自己管理它,那就太好了,就像
class X extends StatefulWidget {
X({this.o, this.key = ObjectKey(o)});
Object o;
ObjectKey key;
...
}
但由于ObjectKey(o) 不是常量表达式,它不能用作默认参数。还有其他方法吗?
【问题讨论】: