如何使用 Backbone Js 仅在 localStorage 中使用集合

How use a collection only in localStorage with Backbone Js

我正在用 Backbone 和 Marionette 制作一个网站,我在这个网站上制作了一个购物车。

但是,在购物车中,如果用户未登录,我不想创建端点来保存商品。我只想保存在localStorage中。

我正在尝试用 Backbone.localStorage 做这个,但我做不到。

App.Collections.Cart = Backbone.Collection.extend({
    model: GroovecollabWebsite.Models.Category,
    localStorage: new Backbone.LocalStorage("localCart")
});

我想做这个:

var collection = new App.Collections.Cart();
collection.add({/* My model here */}); // Run event to sync with localStorage
collection.remove(<id>); // Run event to sync with localStorage

我该怎么做?

谢谢!

如果您想在更改时保存您的集合,您可以将其添加到您的集合的初始化程序中:


initialize: function() {
  this.on('add remove', function() {
    this.sync();
  });
}