如何解决用户收回更改后 Binder#hasChanges() 的状态
对于没有绑定 bean 的绑定器,一旦绑定字段发生更改,hasChange()
方法就会返回 true
。但是在更改恢复后它仍然是 true
。因此,我正在寻找类似 isEqualToInitialState()
的东西,以便仅为真正的更改启用保存按钮。
是否有符合我意图的最佳实践?我也没有看到像 hasChangesComparedTo(Bean bean)
这样的方法。
解决方法
CREATE TABLE table_name ( id,content ) AS
SELECT 1,'1|1232' FROM DUAL UNION ALL
SELECT 2,'23|12323' FROM DUAL UNION ALL
SELECT 3,'33|233223' FROM DUAL;
只是一个“愚蠢”的跟踪器,无论是否有任何值
改变了。它没有“先前或原始值”的概念。
如果你想比较binder和原始bean的状态, 你必须自己做:
- (可选):向你的 bean 添加一个适当的 equals 方法,所以 比较容易处理
- 保留原始值/bean并在活页夹中设置一个副本(例如使用
Binder.hasChange
然后readBean(orig)
将数据导入 一个新鲜的对象) - 比较原件和副本,然后做出相应的反应
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。