Backbone JS v0.5.3简单安装无法运行?

时间:2012-01-13 17:41:18

标签: asp.net-mvc backbone.js

我有一个简单的骨干应用程序,我正在用于测试。一切似乎都已到位,我没有收到任何JS错误,但是我没有从服务器请求的内容显示在页面上。

我试图将一些LI附加到UL。我正在向控制台登录主干模型以及JSON表单,因此我可以清楚地看到数据从服务器返回为JSON。

关于我(非常简单)主干实现中缺少什么的想法?

请在此处查看:http://backbonepeople.apphb.com/

AppView = Backbone.View.extend({
    el: '#people',
    initialize: function () {
        this.model.bind("reset", this.render, this);
    },
    render: function (eventName) {
        _.each(this.model.models, function (person) {
            console.log(person);
            var view = new PersonView({ model: person });
            $(this.el).append(view.render().el);
        });
        return this;
    }
});

1 个答案:

答案 0 :(得分:2)

在传递给_.each的函数中,this未绑定到您的视图,这意味着this.el未定义。尝试

_.each(this.model.models, function (person) {
    var view = new PersonView({ model: person });
    $(this.el).append(view.render().el);
}, this);

var self=this;
_.each(this.model.models, function (person) {
    var view = new PersonView({ model: person });
    $(self.el).append(view.render().el);
});

顺便说一下,_.each(this.model.models, function...可以写成this.model.each(function...