用户收回更改后 Binder#hasChanges() 的状态
State of Binder#hasChanges() after user takes back changes
对于没有绑定 bean 的绑定器,hasChange()
方法 returns true
一旦绑定字段发生更改。但在恢复更改后它仍然是 true
。所以我正在寻找类似 isEqualToInitialState()
的东西,以便仅对实际更改启用保存按钮。
是否有适合我的意图的最佳实践?我也没有看到像 hasChangesComparedTo(Bean bean)
.
这样的方法
Binder.hasChange
只是一个“愚蠢”的跟踪器,是否有任何值
变了。它没有“先前或原始值”的概念。
如果您想将绑定器的状态与原始 bean 进行比较,
你必须自己做:
- (可选):向您的 bean 添加适当的 equals 方法,因此
比较更容易处理
- 保留原件 value/bean 并在活页夹中设置副本(例如使用
readBean(orig)
然后 writeBean(empty)
将数据放入
一个新鲜的对象)
- 比较原件和副本然后做出相应反应
对于没有绑定 bean 的绑定器,hasChange()
方法 returns true
一旦绑定字段发生更改。但在恢复更改后它仍然是 true
。所以我正在寻找类似 isEqualToInitialState()
的东西,以便仅对实际更改启用保存按钮。
是否有适合我的意图的最佳实践?我也没有看到像 hasChangesComparedTo(Bean bean)
.
Binder.hasChange
只是一个“愚蠢”的跟踪器,是否有任何值
变了。它没有“先前或原始值”的概念。
如果您想将绑定器的状态与原始 bean 进行比较, 你必须自己做:
- (可选):向您的 bean 添加适当的 equals 方法,因此 比较更容易处理
- 保留原件 value/bean 并在活页夹中设置副本(例如使用
readBean(orig)
然后writeBean(empty)
将数据放入 一个新鲜的对象) - 比较原件和副本然后做出相应反应