Javascript 将模型添加到集合不起作用
我正试着用我的脊梁骨玩耍,似乎遇到了问题。我的事件正在触发,但集合未更新。我已经在下面介绍了事件回调,但可以在这里看到整个示例:Javascript 将模型添加到集合不起作用,javascript,backbone.js,Javascript,Backbone.js,我正试着用我的脊梁骨玩耍,似乎遇到了问题。我的事件正在触发,但集合未更新。我已经在下面介绍了事件回调,但可以在这里看到整个示例: 我做错了什么?它忽略了新项目,因为它有重复的id。这应该可以修复它(): 是主干文档中的相关注释: 如果要向集合中已存在的模型添加模型,则将忽略它们,除非传递{merge:true},在这种情况下,它们的属性将合并到相应的模型中 问题是您正在添加具有重复ID的项 如果执行以下操作,它将起作用: this.collection.add({ "id": "p"+M
我做错了什么?它忽略了新项目,因为它有重复的id。这应该可以修复它(): 是主干文档中的相关注释: 如果要向集合中已存在的模型添加模型,则将忽略它们,除非传递{merge:true},在这种情况下,它们的属性将合并到相应的模型中
问题是您正在添加具有重复ID的项 如果执行以下操作,它将起作用:
this.collection.add({
"id": "p"+Math.random(), // Just an example, of course!
"name" : "ghgjhj",
"title" : "EsssyyyyEEE",
"background" : "ssssFyFFF"
});
理想情况下,您可能根本不需要声明id
,而是让主干网来处理:
this.collection.add({
"name" : "ghgjhj",
"title" : "EsssyyyyEEE",
"background" : "ssssFyFFF"
});
您还可以使用收藏的长度设置新id:
var id = this.collection.length + 1;
this.collection.add({
"id": "p" + id,
"name" : "ghgjhj",
"title" : "EsssyyyyEEE",
"background" : "ssssFyFFF"
});
谢谢我不知道合并选项。
this.collection.add({
"name" : "ghgjhj",
"title" : "EsssyyyyEEE",
"background" : "ssssFyFFF"
});
var id = this.collection.length + 1;
this.collection.add({
"id": "p" + id,
"name" : "ghgjhj",
"title" : "EsssyyyyEEE",
"background" : "ssssFyFFF"
});