检测用户是否更改了新的Ember数据记录

时间:2013-10-18 14:09:49

标签: ember.js ember-data

使用Ember Data创建新记录时,get("isDirty")将返回true。但到目前为止,用户没有对记录进行任何更改,我们可以丢弃它而不会丢失任何用户的工作。

是否有任何官方的,受支持的方式来检测这种情况,其中已创建记录但未设置任何属性?

incomplete answer中有一个更早版本的Ember Data的问题{{3}},在它被彻底检修之前。didSetProperty功能仍然存在于当前版本中,但它&#39}如果没有官方可以找到,那么它可能是解决问题的可能途径。)

1 个答案:

答案 0 :(得分:0)

在内部,_attributes属性会跟踪更改的属性。你可以检查一下

record.get('isNew') && Ember.keys(record._attributes).length === 0

看到它刚刚创建并且没有任何更改。

请注意,这并不是外部API的一部分,但我不知道有任何外部API可以实现此目的。