KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I've got this piece of code from a Backbone.js tutorial from here . The code is as follows: (function($){ var Item = Backbone.Model.extend({ defaults: { part1: 'Hello', part2: 'World' } }); var ItemList = Backbone.Collection.extend({ model: Item }); var ItemView = Backbone.View.extend({ tagName: 'li', initialize: function(){ _.bindAll(this, 'render'); }, render: function(){ $(this.el).html("<span>" + this.model.get('part1') + " " + this.model.get('part2') + "</span>"); return this; } }); var AppView = Backbone.View.extend({ el: $('body'), initialize: function(){ _.bindAll(this, 'render', 'addItem', 'appendItem'); this.collection = new ItemList(); this.collection.bind('add', this.appendItem) this.counter = 0; this.render(); }, events: { 'click button#add': 'addItem' }, addItem: function(){ var item = new Item(); item.set({ 'part2': item.get('part2') + this.counter++ }); this.collection.add(item); }, appendItem: function(item){ var itemView = new ItemView({ model: item }); $('#list', this.el).append(itemView.render().el); }, render: function(){ $(this.el).append("<button id='add'>Add Item</button>"); $(this.el).append("<ul id='list'></ul>") }, }); var Tasker = new AppView(); })(jQuery); There is one thing I could not understand from the above code. In the function appendItem there is this piece of code: itemView.render().
Tags (comma-separated)
Save Edits
Cancel