我正在编写自己的适配器/序列化器。为了将数据发送到后端,我必须检测DS.Snapshot和原始Ember对象中的更改。对于普通属性,可以 changedAttributes(),但我没有找到如何检测hasMany关系中的变化的方法。
我可以使用snapshot.hasMany(' foo')和changedAttributes()来检测新关系。但是这种方法无法找到已删除的关系。
答案 0 :(得分:0)
Ember(2.x)不跟踪关系(例如hasMany),但可以使用几乎可以执行它的ember-addon ember-data-change-tracker。它允许您(自动)保存当前的关系状态,然后您可以比较这个已保存的' (=旧州)与当前状态。你必须自己找到差异。适配器的一个简单示例:
<MyListItem />
感谢Christoper指出了正确的方向。