首页 > 解决方案 > 访问 Backbone 集合属性

问题描述

我正在处理有关处理收集的堆栈溢出问题。Brian Genisio给出的答案非常有说服力。我试过他的方法如下:

集合定义

var PersonCollection = Backbone.Collection.extend({
  model : Person,
  url: '/people',
  parse: function(resp, xhr) {
    this.header = resp.header;
    this.stats = resp.stats;
    return resp.people;
  }
});

集合使用

var personCollection = new PersonCollection();
personCollection.fetch();
console.log(personCollection.header);  //undefined
console.log(personCollection.status);  //undefined

该集合完美地获取模型,但我将其他分配的属性设置为未定义。请建议我解决此问题的解决方案。

标签: javascriptbackbone.js

解决方案


您需要等到提取完成。

personCollection.fetch().done(() => {
  console.log(personCollection.header);
  console.log(personCollection.status);
});

推荐阅读