javascript - 当您克隆 Backbone.Collection 时,模型引用是否完好无损?

标签 javascript backbone.js

我正在 .clone() -ing 一个集合,这样我就可以在其上使用拼接循环而不干扰原始集合。克隆阵列中的模型是原件还是副本?

我需要的是包含原始模型的数组副本。

感谢您提供任何信息!

最佳答案

您将获得与源集合相同的模型,这些模型包含在相同类型的新集合中。

这里是collection.clone的实现:

   clone: function() {
      return new this.constructor(this.models);
    },

或者,如果您更喜欢深度克隆,请覆盖 Backbone.Collection.clone

clone: function(deep) {
  if(deep) {
    return new this.constructor(_.map(this.models, function(m) { return m.clone(); }));
  }else{
    return Backbone.Collection.prototype.clone();
  }
}

http://jsfiddle.net/puleos/9bk4d/

关于javascript - 当您克隆 Backbone.Collection 时,模型引用是否完好无损?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16423873/

相关文章:

javascript - 如何在 Angular.js 中创建新的标签元素

javascript - 在 for 循环中使用 Model.create() 和 save()

javascript - 如何取消隐藏 chrome 中过滤器隐藏的 javascript 和 html 错误?

javascript - Jquery 工具提示不适用于文本/模板

javascript - 复杂的javascript条件表达式

javascript - 在 Backbone 中 this.model 是未定义的,为什么?

javascript - 主干获取并使用 jqXHR 对象

javascript - 可视化分层数据

javascript - Backbone 模型可以与 Angular 一起使用吗?

javascript - 主干网看不到传递给模板的 key