我视图中的模型属性被归类为函数

时间:2014-06-24 09:40:15

标签: backbone.js

所以我试图将我的视图链接到我的模型,我完全按照说明进行操作,但是当谈到模型部分时,我只是难倒了。

每当我尝试通过实例化定义模型时,当我console.log()出来时,模型被归类为函数。

但是让我告诉你。

var ListModel = Backbone.Model.extend({
    defaults: {
        name: "Miles",
        last: "Coleman"
    }
});

var ListView = Backbone.View.extend({

    initialize: function(opts){
        this.template = opts.template;
        this.render();
    },

    render: function() {
        var data = this.model.toJSON();
        console.log(this.model);
        // outputs: function (){a.apply(this,arguments)} 
    }
});

var view = new ListView({
    model: ListModel,
    el: 'div',
    template: _.template('#todo-template')
});

我在这里缺少一些愚蠢的细节吗?谢谢!

1 个答案:

答案 0 :(得分:3)

您将类本身ListModel传递给视图,但视图需要该类的实例,例如new ListModel()。尝试

var view = new ListView({
    model: new ListModel(),
    el: 'div',
    template: _.template('#todo-template')
});

有关JS中的类和实例的更多信息,请参阅https://developer.mozilla.org/en-US/docs/Web/JavaScript/Introduction_to_Object-Oriented_JavaScript