jquery – 如何使用backbone.js保存集合

前端之家收集整理的这篇文章主要介绍了jquery – 如何使用backbone.js保存集合前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个类别的层次结构.我为层次结构使用了一个 jquery库,以便按照用户想要的方式混淆.然后他们点击保存.因此,要保存的初始层次结构和层次结构可能完全不同.

层次结构表示为集合,我使用parentIds使用ol和li标记构建树.

用户单击“保存”时,我需要使用新的parentId更新集合中的所有项目,并将每个项目与服务器同步.

我想知道是否有人对如何继续这里有任何建议.我在Backbone.sync的文档中看到过”使用setTimeout批量快速更新到单个请求中.”所以,如果我理解正确,我会将每个调用排队到Backbone.sync然后使用几秒钟后,setTimeout将我的队列发送到服务器?

另外,如果我重写Backbone.sync,我是否仍然需要一个’save’方法,用于解析响应的json的集合(服务器响应必须发回一个对象列表),然后调用模型.set集合中的每个项目?有人有任何示例代码吗?

谢谢!

解决方法

我不确定我完全理解上下文.它是这样的:你有一个包含所有类别的集合,并使用属性parentId保持层次结构.用户更改层次结构,然后您要保存层次结构(隐式地,保存现在包含不同parentId的集合).

如果这是正确的,我会做的是:

>制作接受{id:parentId}哈希值的PUT / categories操作,并使用此数据更新所有类别.
>保存时,我会调用Backbone.sync(‘update’,categories_collection,{data:a_hash_of_ {id:parent_id},success:your_success_callback).如果您为类别指定了url,那么这应该在没有任何其他覆盖的情况下工作,并且在成功回调中,您可以使用新数据重置集合.

这不是完整的REST,但它的优点是无论您拥有多少类别,都只会触发一个更新请求.

猜你在找的jQuery相关文章