Backbone localstorage - 必须指定 "url"(无视图)

Backbone localstorage - A "url" must be specified (without view)

我知道还有更多类似的问题,但我真的找不到问题的答案..

这是我的 jsfiddle:http://jsfiddle.net/ktyghnL1/3/

代码:

var Todo = Backbone.Model.extend({
});

var Todos = Backbone.Collection.extend({
    model: Todo,
    localStorage: new Backbone.LocalStorage('todos-backbone'),
    comparator: 'order'
});

todos = new Todos();

我只为我的 angularjs 应用程序使用模型和集合。

当我尝试创建一个新的待办事项时,它失败了。

您使用 var todo = new Todo(); todo.save(); 创建的模型没有任何与本地存储相关的信息,您只在 collection 上设置了它。

从您的 todos collection 创建模型,将自动提供存储空间:

var todo = todos.create();
todo.save();

查看http://jsfiddle.net/nikoshr/56awrstr/1/for 演示

或者您可以创建一个模型实例,为其分配一个商店并将其添加到 collection:

var store = new Backbone.LocalStorage('todos-backbone');
var todo = new Todo();
todo.localStorage = store;
todo.save();
todos.add(todo);

http://jsfiddle.net/nikoshr/56awrstr/2/