gpt4 book ai didi

javascript - 将 Backbone Collection 对象转换为其原始类型

转载 作者:行者123 更新时间:2023-12-02 16:21:30 25 4
gpt4 key购买 nike

我使用backbone js 将自定义元素添加到backbone js Collection 中。我需要将其转换回其原始类型,下面是

var Text = function () {

};

var Radio = function () {

};

function myfunction() {
var collection = new Backbone.Collection();
var t = new Text();
var r = new Radio();
collection.add(t);
collection.add(r);

alert(t instanceof Text);
alert(collection.at(0) instanceof Text);

}

语句alert(t instanceof Text);返回true,其中语句为

alert(collection.at(0) instanceof Text); returns false .

有什么方法可以将其转换为其原始类型吗?

最佳答案

你不能。

  • collection.add(t) 等价于 t 时的 collection.add(new Backbone.Model(t))不继承 Backbone.Model1

  • Backbone.Model 的构造函数通过 Model.sett 的属性复制到新对象中但不保留源对象的任何其他信息2

如果可以的话,扩展 Backbone.Model 来构建 TextRadio

var Text = Backbone.Model.extend({

});

如果没有,您将必须在属性中添加其他信息来识别正确的原型(prototype)。

<小时/>

1 Annotated source code, Collection._prepareModel
2 Annotated source code, Model.set

关于javascript - 将 Backbone Collection 对象转换为其原始类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29072012/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com