嘿,我不确定为什么此Backbone视图显示为参考错误,指出未定义UserView。用户模型显示为一种功能,因此可以正常工作。我也在jsfiddle上用JSLint运行了我的代码,js明智的还是没有问题?
下面的代码
var User = Backbone.Model.extend({
defaults: {
firstName: 'J.R.',
lastName: 'Smith',
email: '[email protected]',
phone: '212-424-6234',
birthday: '03/05/1982',
city: 'New York'
},
location: function(){
return this.get('firstName') + ' ' + this.get('lastName') + 'is currently in ' + this.get('city') + '.';
}
});
var UserView = Backbone.View.extend({
tagName: 'li',
initialize: function() {
this.render();
},
render: function() {
$(this.el).html( this.model.get('firstName'));
}
});
var user = new User();
var userView = new UserView({model: user});
最佳答案
您必须在window.load函数中声明关注内容。
var user = new User();
var userview = new UserView({model: user});
因为if如果不在window.load函数中,则在调用UserView的对象时,此时不会创建该对象。 :)