Backbone的新手,并在这里强调js。
我有一组数组,我想将其转换为模型集合。
所以就像
{ {1, 2, 3, 4}, {5, 6, 7, 8}}
第二级数组是进入骨干模型的内容。现在,我有
collection.reset(_.map(results, (indvidualResults) -> new model(individualResults))
当我执行console.log(collection.pop)时,这不起作用我打印出一个函数。我想这是因为我正在使用一组数组(但我可能是错的)。如何将第二个数组转换为模型然后将其放入集合中?
答案 0 :(得分:9)
重塑您的原始数据,使其看起来更像:
[{ first: 1, second: 2, third: 3, fourth: 4 }, { first: 5, second: 6, third: 7, fourth: 8}]
假设您的模型和集合定义如下:
var Model = Backbone.Model.extend({});
var Collection = Backbone.Collection.extend({
model: Model
});
然后将属性哈希数组传递给reset方法:
var results = [{ first: 1, second: 2, third: 3, fourth: 4 }, { first: 5, second: 6, third: 7, fourth: 8}];
var collection = new Collection();
collection.reset(results);
var model = collection.pop();
console.log(JSON.stringify(model.toJSON());