BackboneJS,创建和销毁,但没有更新方法?

时间:2011-07-19 10:00:40

标签: javascript ajax backbone.js crud

我注意到在BacbkoneJS中,Collection对象中有一个方法允许您向该集合添加新模型,同时将新模型推送到服务器。这很方便,因为如果ajax请求成功,它只会将新模型添加到集合中。它还将使用从服务器返回的ID更新模型上的ID。

在Model对象上还有一个名为destroy的类似方法,如果ajax请求返回200,这只会破坏模型。

如何使用Update实现类似的功能,当我在模型上设置数据时,它会尝试将模型保存到服务器,确保200状态,然后触发“更改”事件?

问题是如果我设置了模型数据(我必须这样做才能调用save()),然后触发更改事件。

由于

1 个答案:

答案 0 :(得分:1)

Backbone.Model.save()方法允许您指定要更改的属性。查看annotated source code,看起来“model.set()”会在服务器成功响应时发生。

所以,而不是做

myModel.set({this:"that"});
myModel.save();

待办事项

myModel.save({this:"that"});

并且在成功保存后应该触发更改事件。

注意:我没有对此进行测试 - 这只是阅读源代码。