我目前正在学习Flutter / Dart并取得了良好的进展,所以如果这是一个菜鸟问题,请多多包涵。
我有一个对象。
class Todo {
bool complete;
String note;
}
根据用户交互,其属性将更新。 终于我得到了最新的状态来做某事。 我有两种解决方法:
final Todo todo = Todo();
todo.complete = true;
todo.note = "something";
class Todo {
Todo({this.complete = false, this.note = ""});
final bool complete;
final String note;
Todo copyWith({bool complete, String note}) {
return Todo(
complete: complete ?? this.complete,
note: note ?? this.note,
);
}
}
----------
final Todo todo = Todo();
final Todo2 = todo.copyWith(complete: true);
final Todo3 = todo.copyWith(note: "something");
在解决方案1中,我终于明白了。 在解决方案2中,我终于得到todo3。
哪种解决方案更好?
谢谢!