Module 2: Views > Combining Views & Models
by emgee
HTML
<script src="http://documentcloud.github.com/underscore/underscore.js"></script>
<script src="http://documentcloud.github.com/backbone/backbone.js"></script>
JavaScript
var RefreshingView = Backbone.View.extend({
initialize: function(){
this.model.on("change", function(){
this.render();
}, this); // sets context for event handler
},
render: function(){
this.$el.html(this.model.get("text"));
}
});
var m = new Backbone.Model({text: new Date().toString()});
var v = new RefreshingView({model:m, el: "body"});
v.render();
setInterval(function(){
m.set("text", new Date().toString());
}, 1000);