Javascript 主干线.木偶-不知何故收集“;“失踪”;一些元素
我有一个让我发疯的问题。我有一个实体集合,命名的实体接收a和B对象。下面的代码虽然看起来很简单,但并不像(I)所预期的那样工作。 不知何故,添加到entities集合的最后一个对象没有被添加。事实上,如果我打印前后的长度,我得到的是1,2,3,4,5,5,而不是预期的1,2,3,4,5,6。 A和B是实体的“子类”,实体是一个模型,因为A和B都有相应的视图。最后,我预计会有6个可见对象,但我只得到5个。 有人知道问题出在哪里吗?提前谢谢Javascript 主干线.木偶-不知何故收集“;“失踪”;一些元素,javascript,backbone.js,marionette,Javascript,Backbone.js,Marionette,我有一个让我发疯的问题。我有一个实体集合,命名的实体接收a和B对象。下面的代码虽然看起来很简单,但并不像(I)所预期的那样工作。 不知何故,添加到entities集合的最后一个对象没有被添加。事实上,如果我打印前后的长度,我得到的是1,2,3,4,5,5,而不是预期的1,2,3,4,5,6。 A和B是实体的“子类”,实体是一个模型,因为A和B都有相应的视图。最后,我预计会有6个可见对象,但我只得到5个。 有人知道问题出在哪里吗?提前谢谢 var that = this; _.each( this
var that = this;
_.each( this.as.models, function( a, i ){
that.entities.add( a );
});
_.each( this.bs.models, function( b, j ){
that.entities.add( b );
});
将对象或主干模型添加到主干集合时,将进行检查,以确定该对象是否已存在于集合中。在插入现有对象的情况下,不会更改任何内容,也不会触发任何事件,依此类推。通过相等或匹配
id
属性,可以认为对象是相同的
有一种方法可以通过将
{merge:true}
选项传递给add
方法来覆盖此选项。可能是因为您在this.as.models
和this.bs.models
中的两个对象具有相同的id吗?是的,这就是问题所在。非常感谢你。这对我来说是愚蠢的。我之前已经检查过了,但那时候不是问题。然后我更改了一些代码,现在我碰巧有匹配的ID,但我再也不记得检查它了。