Подтвердить что ты не робот

Ошибка backbone.js _ensureElement

Я получаю эту ошибку, когда хочу инициализировать представление из класса маршрутизатора.

Ошибка: Uncaught TypeError: Object # не имеет метода '_ensureElement'

BlogFormView:

App.BlogFormView = Backbone.View.extend({
    el: ".data-form",
    initialize: function(){
        this.template = _.template($("#blog_form_template").html());
        this.render();
    },
    render: function(){
        this.$el.html(this.template({blog: this.model.toJSON()}));
        return this;
    },
    events: {
        "click .submit-blog" : "submitForm"
    },
    submitForm: function(ev){

    }
});

Router:

var blog = new App.Blog();
var blogFormView = App.BlogFormView({model: blog});
4b9b3361

Ответ 1

В коде маршрутизатора отсутствует новое ключевое слово:

var blogFormView = new App.BlogFormView({model: blog});

Кроме того, обычно не рекомендуется выводить рендер внутри метода initialize. Я лично просто вызываю рендеринг внутри кода маршрутизатора.