使用fetch方法分叉json文件会在我的代码中触发错误。似乎来自服务器的响应是不对的。详情请参阅下面的广告模型
//Advertisement model
App.Tasks.Model.Ads = Backbone.Model.extend({
url: "ads/ads.json",
intialize: function () {
},
Next: function () {
var ads = this.get("ads");
return ads[Math.ceil(Math.random(0, ads.legth) * 10)];
}
});
调用fetch()
时服务器响应应该如何。现在它如下所示
{ads: ["1.png", "2.png", "3.png"]}
执行此操作会触发错误回调
//Advertisement model
App.Tasks.Ads = new App.Tasks.Model.Ads();
App.Tasks.Ads.fetch({
success: function (model, response) {
console.log("Success", arguments);
},
error: function (model, response) {
console.log("Error", arguments);
}
});
答案 0 :(得分:1)
您的服务器使用无效的JSON进行响应,名称/值对中的左侧部分必须是字符串,这意味着ads
应该用双引号括起来:
{"ads": ["1.png", "2.png", "3.png"]}
有关完整参考,请查看http://www.json.org/