将Backbone.sync扩展为批量同步?

Hen*_*nry 8 backbone.js

应该使用什么技术来实现Backbone.sync的批量插入/更新?

stu*_*ith 4

我想这取决于你的使用场景,以及你想改变多少调用代码。我认为你有两个选择:

选项 1:不更改客户端(调用)代码

奇怪的是,Backbone.sync 的注释源给出了“批处理”作为覆盖该sync方法的可能原因:

使用 setTimeout 将快速更新批处理到单个请求中。

不是在同步时实际保存,而是将请求添加到队列中,并且仅每隔一段时间进行批量保存。_.throttle或者_.delay可能会在这里帮助你。

选项 2:更改客户端代码

或者,save您可以向集合添加某种save方法,而不是调用模型。你必须跟踪哪些模型实际上被修改了,因此需要更新,因为据我所知,Backbone 只知道它们是否是新的(但我可能是错的)。