我正在关注带注释的源代码:
http://backbonejs.org/docs/todos.html
模型是:
var Todo = Backbone.Model.extend({
defaults: function() {
return {
title: "empty todo...",
order: Todos.nextOrder(),
done: false
};
},
toggle: function() {
this.save({done: !this.get("done")});
}
});
我的问题是:
调用this.save时会发生什么?我知道该集合使用本地存储,但模型本身如何工作?
答案 0 :(得分:1)
模型有url & urlRoot方法,您可以在其中定义服务器的Rest端点。
因此它将尝试连接到该点并执行与该特定点相对应的代码。因此,这会将模型的新状态保存到服务器中。
但是因为在您指的是使用本地存储适配器的情况下,更改将保留在浏览器中。因此不需要url
方法。
但正因为如此,如果您尝试在其他浏览器中打开相同内容,则不会看到任何更改,因为更改是在浏览器上而不是在服务器上。