Backbone的新功能,但是当我遍历Collection时,我的所有属性都会丢失

时间:2013-02-12 23:06:04

标签: javascript backbone.js

让我们开始

devices = new SmartLink.Collections.DeviceMap
view = new SmartLink.Views.DeviceMap({collection: devices})

我的收藏

parse: function (response) {
    console.log(response.sites);
    return response.sites;
}

我的观点

initialize: function (options) {
    this.collection.on('add',this.addOne,this);
    this.collection.on('reset',this.addAll,this);
    this.collection.fetch();
},

addAll: function() {
    console.log("addall");
    this.collection.forEach(this.addOne,this);
},

addOne: function(site) {
    console.log("addone");
    console.log(site);
},

发生了什么事? Console

  1. 解析时,会从对象数组中看到响应,打印出响应
  2. 启动addAll
  3. 然后单独添加一个
  4. 我的问题

    当我遍历每个项目时,数组中每个项目的所有属性在哪里? 我唯一看到的就是身份证。 如果我尝试使用console.log(site.name),则表示未定义。

1 个答案:

答案 0 :(得分:1)

使用site.get('name')获取name属性。您必须使用函数get从模型中获取属性。