Jag*_*ags 3 ajax backbone.js backbone-views
我是骨干的新手.我尝试以下面的方式进行ajax调用.而且我不确定如何处理我的get请求中的数据?这是代码:
//与服务器交互
var UserModel = Backbone.Model.extend({
url:'http://api.geonames.org/astergdemJSON?formatted=true&lat=50.01&lng=10.2&username=demo&style=full'
});
var MyView = Backbone.View.extend({
initialize: function() {
this.model = new UserModel();
this.model.fetch();
},
render: function() {
alert('do awesome stuff here');
}
});
Run Code Online (Sandbox Code Playgroud)
Wal*_*ira 10
当您创建时fetch(),Backbone将向您指定的端点发送GET ajax请求url.
当您调用时.fetch,模型将触发一个request事件,当您收到它时,解析它并将其设置为模型,模型将触发一个sync事件.
如果要在将任何数据设置为模型之前更改任何数据,请覆盖模型上的方法parse.它从GET请求接收原始数据,并且必须返回将要设置到模型的内容.
如果您想获得额外的成功和错误回调,请将它们传递给您fecth({ success: ..., error: ... }).在将值设置和解析到模型之后和同步事件之前触发成功回调.错误事件之前触发错误回调.查看文档以获取更多详细信息.没有必要通过任何回调.
所以,它会是这样的:
var MyView = Backbone.View.extend({
initialize: function() {
this.model = new UserModel();
this.listenTo(this.model, 'sync', this.render);
this.model.fetch();
},
render: function() {
alert('My model loaded: ' + this.model.toJSON());
}
});
Run Code Online (Sandbox Code Playgroud)
而且,就是这样.Backbone几乎可以为您提供一切.
希望我帮了.
| 归档时间: |
|
| 查看次数: |
5423 次 |
| 最近记录: |