JavaScript:Backbone.js获取json并将其加载到模型集合中
JavaScript: Backbone.js fetch json and load it into a collection of models?
到目前为止,我有以下代码,但它似乎不起作用,而且我不知道异步提取何时完成:
var item = Backbone.Model.extend({
defaults: {
id: 0,
an_id: 0,
strval: null,
th_id: 0,
text: null
},
url: 'page.php',
options: {
success: function(data) {
alert('s: ' + dump(data));
// the dump function is my way of dumping objects into a string,
// use console.log if you want, as I have that disabled
},
error: function(x, t, e) {
alert('e: ' + t + ', ' + e);
}
}
});
var coll = Backbone.Collection.extend({
model: item
});
var options = new Options();
Backbone.sync("create", coll, item.options); // 'undefined' is not an object (evaluating c.url) in backbone-min.js
更新
我已经将原始代码修改为现在的代码,后端现在可以区分New、Update、Save和Delete请求。
我仍然无法找到如何填充集合coll
。
Backbone.Collection
用于保留多个项-您似乎试图让Collection从模型中"继承",这不是正确的方法。
集合是有序的模型集。您可以绑定"更改"事件以在集合中的任何模型已被修改时被通知,监听"add"answers"remove"事件,从服务器,并使用一整套Undercore.js方法。
您可以在fetch调用中添加一个成功处理程序。试试这个:
coll.fetch({
success: function() {
alert("success");
console.log(coll.toJSON());
},
error: function(){
alert("error")}
});
相关文章:
- 延迟 AngularJS 路由更改,直到加载模型以防止闪烁
- 加载模型与三个.js
- Three.js隐藏已加载模型的对象
- Javascript客户端从ASP.NET MVC后端延迟加载模型
- 如何在三.js中加载 .x 模型
- 如何将内置选项卡与没有路由的 ember 集成,以便为每个选项卡异步加载模型
- 三.js 加载模型时进度加载器不隐藏
- Angularjs:如何在惰性模式下加载模型
- WebGL显示不带矩阵的加载模型
- 单击时重新加载模型
- Ember 2.0路由器不加载模型数据
- 转换到路线后重新加载模型
- 在three.js中加载模型的最简单方法
- 在AngularJS中加载模型并渲染内容后执行函数
- 下划线模板不加载模型.% console.log(Model.id) %>它是未定义的
- 如何在主干视图中加载模型集合
- 从MEAN.IO中的其他包加载模型
- MVC淘汰.儿童下载列表没有't第一时间加载模型数据
- 在模态中加载模型只工作一次
- 烬路线在错误加载模型后卡住