Javascript 主干:从客户端的json文件中获取数据
使用Javascript 主干:从客户端的json文件中获取数据,javascript,json,backbone.js,Javascript,Json,Backbone.js,使用Backbone.js,在模型或集合实例上调用fetch方法时,我希望从客户机部分的Json文件中获取数据 我的集合(mycl)中的url属性)指向如下json文件: [ {title: "_My trip to Bali", src: "bali-trip.jpg"}, {title: "_The flight home", src: "long-flight-oofta.jpg"}, {title: "_Uploading pix", src: "too-many-pics.
Backbone.js
,在模型或集合实例上调用fetch方法时,我希望从客户机部分的Json文件中获取数据
我的集合(mycl
)中的url属性
)指向如下json文件:
[
{title: "_My trip to Bali", src: "bali-trip.jpg"},
{title: "_The flight home", src: "long-flight-oofta.jpg"},
{title: "_Uploading pix", src: "too-many-pics.jpg"}
]
我执行以下命令:
myCol = new MyCol();
myCol.fetch(); // the Request Method GET is ok
myCol.toJSON(); // []
@fguillen说得对,您可以使用
成功和错误回调来调试代码。
无论如何,错误是json格式的,因为成员必须是字符串
试试这个,它会起作用:
[
{"title": "_My trip to Bali", "src": "bali-trip.jpg"},
{"title": "_The flight home", "src": "long-flight-oofta.jpg"},
{"title": "_Uploading pix", "src": "too-many-pics.jpg"}
]
请记住,fetch不是一个同步函数。fetch方法将启动对服务器的请求,并通过事件或回调向您发出响应警报
看一下fetch方法的主干文档
试着做类似的事情
myCol = new MyCol();
myCol.fetch({
success: function() { //This is fired if the request is succesful
myCol.toJSON();
}
});
或
或者正如@roberkules所提到的,fetch返回a,所以您可以这样做
myCol = new MyCol();
myCol.fetch()
.done(function() {
myCol.toJSON();
})
.fail(function() {
alert('Oh No!');
});
我们需要更多信息:1)哪个是JSON文件的URL?2) 哪个是主干请求的URL?3) 网络控制台向您展示了什么?4) 什么是这样的mycl.fetch({success:function(){console.log(“success”);},error:function(){console.log(“error”);}
向您展示的?我更喜欢mycl.fetch().done(function(){mycl.toJSON();})
myCol = new MyCol();
myCol.fetch()
.done(function() {
myCol.toJSON();
})
.fail(function() {
alert('Oh No!');
});