Backbone.js 主干TODO模型-->;保存方法

Backbone.js 主干TODO模型-->;保存方法,backbone.js,Backbone.js,以下是注释源代码: 模型是: var Todo = Backbone.Model.extend({ defaults: function() { return { title: "empty todo...", order: Todos.nextOrder(), done: false }; }, toggle: function() { this.save({done: !this.get("done")}); } }); 我的问题是: 调

以下是注释源代码:

模型是:

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时会发生什么?我知道集合使用本地存储,但是模型本身是如何工作的?

模型有一个方法,您可以在其中定义服务器的Rest端点

因此,它将尝试连接到该点并执行与该特定点对应的代码。因此,这会将模型的新状态保存到服务器

但因为在您所指的情况下,使用了本地存储适配器,所以更改将保留在浏览器中。因此,不需要
url
方法

但正因为如此,如果您尝试在不同的浏览器中打开相同的文件,您将看不到任何更改,因为这些更改在浏览器上而不是服务器上。

模型有一种方法,您可以在其中定义服务器的其余端点

因此,它将尝试连接到该点并执行与该特定点对应的代码。因此,这会将模型的新状态保存到服务器

但因为在您所指的情况下,使用了本地存储适配器,所以更改将保留在浏览器中。因此,不需要
url
方法


但正因为如此,如果您尝试在其他浏览器中打开相同的文件,您将看不到任何更改,因为这些更改在浏览器上而不是在服务器上。

localstorage仅在集合上定义,模型如何知道它?正确。集合将模型作为参数,因此当模型作为集合的一部分创建时,适配器将在集合中初始化。所以,当您保存模型时,适配器会将模型保存为它所在集合的一部分defined@ChrisMuench.. 很高兴能提供帮助:)localstorage仅在集合上定义,模型如何知道它?正确。集合将模型作为参数,因此当模型作为集合的一部分创建时,适配器将在集合中初始化。所以,当您保存模型时,适配器会将模型保存为它所在集合的一部分defined@ChrisMuench.. 很高兴能帮忙:)