当用户在不同的 Backbone 集合模型之间切换时(通过单击表格行),我需要“唠叨”用户未保存的更改。我搜索了“检查主干模型脏数据”(例如),但没有找到任何确定的东西。
我使用下划线的“some”和isEqual 功能以如下方式完成了此操作,“some()”足以确定是否存在任何未保存的更改(与那些可能的精确更改相反),在特别是因为模型属性实际上是一个对象数组。
var anyDirty = _.some(myCollection.models, function(model) {
return !_.isEqual(model.get('nodes'), model.previousAttributes()['nodes]);
});
我是 Backbone 的新手,我想知道这是否是一种可以接受的用于临时检查脏模型数据的方法。或者,Backbone 是否为此目的提供了某种内置功能,而我最初的谷歌搜索尝试并没有显示出来?