7
я получаю сообщение об ошибке:Backbone - объект визуализации не имеет метод «применить»
object render has no method apply for the below code.
Что может быть причиной? Страница html не содержит никакого кода, кроме ссылки на javascript.
Что нужно сделать, чтобы удалить ошибку?
(function($) {
window.Book = Backbone.Model.extend({});
window.Library = Backbone.Collection.extend({
model: Book
}); // end of Collection
window.LibraryView = Backbone.View.extend({
el: $('body'),
events: {
'click button#btn_add': 'btn_add'
},
initialize: function() {
$(this.el).append("View initialized");
_.bindAll(this, 'render', 'btn_add');
this.collections = new Library();
this.collections.bind('add', 'render', this);
this.startingDisplay();
},
startingDisplay: function() {
$(this.el).append("<input type='text' id='t1' /><button id='btn_add'>Add</button>");
},
btn_add: function() {
book = new Book({
title: "first"
});
alert("Name : " + book.get('title'));
this.collections.add(book);
},
render: function() {
alert("render called");
},
}); // end of LibraryView
libraryview = new LibraryView();
})(jQuery);
спасибо, работает отлично! – user1305989
Почему я должен возвращать «это» в функции рендеринга? Что это делает ? – user1305989
Таким образом, он можно подключить, таким образом вы можете сделать myView (someModel) .render(). El'. В главном представлении это может быть не так интересно, но это становится удобным, если у вас есть представление - скажем, - ContactItem. –