gpt4 book ai didi

backbone.js - 清除 Backbone Collection 中的所有元素并将它们从关联的 Lawnchair 中移除

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:05:18 24 4
gpt4 key购买 nike

我正在使用 Backbone.js,Lawnchair , 和 backbone.lawnchair.js .

我想知道(从应用程序和本地存储中)“清空”集合的正确方法是什么?

目前,我正在沿用这些思路:

Favorites.Collection = Backbone.Collection.extend({
model: Favorites.Model,
lawnchair: new Lawnchair({ name: "favorites" }, function(e){}),

empty: function(){
this.lawnchair.nuke();
this.fetch();
}
});

这实质上是销毁localStorage中的元素(lawnchair提供了nuke方法)并从localStorage中获取。这似乎有点笨拙,我想知道我是否正在考虑这个问题 - 或者是否有更好的方法。

干杯!

最佳答案

Backbone 遵循某种 RESTish 原则,遗憾的是 REST 没有描述批量删除过程。一次只能删除一个资源。通常,API 不支持对整个集合 URI 的 HTTP DELETE,例如 DELETE/favorites,仅支持 DELETE/favorites/42 - 一次一个。因此,没有单一的 Backbone 方法可以做到这一点,因为通常集合主要设计用于执行获取/获取,然后委托(delegate)给各个模型进行保存和删除。所以,是的,您只能靠自己进行批量删除。您可以做一些更像 RPC 的事情,并将 ID 列表传递给删除过程,但是您上面的内容对我来说似乎已经足够了,是的,直接删除它们然后重新获取集合对我来说似乎也很合理。所以我认为您的解决方案很好,但我也很想知道其他人的建议。

关于backbone.js - 清除 Backbone Collection 中的所有元素并将它们从关联的 Lawnchair 中移除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10016230/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com