我正试图学习BackboneJS,这是我得到的错误。
我正在用coffeescript编码,这是生成的JS,我不知道为什么会发生这种情况,因为我认为我做得正确。
(function() {
var AppRouter, MenuItemDetails, app;
MenuItemDetails = Backbone.View.extend({
render: function() {
var markup;
markup = "<div>" + this.options.category + "</div>";
this.$el.html(markup);
return this;
}
});
AppRouter = Backbone.Router.extend({
routes: {
"": "list",
"menu-items/new": "itemForm",
"menu-items/:item": "itemDetails"
},
list: function() {
return $('#app').html('List Screen');
},
itemDetails: function(item) {
var view;
view = new MenuItemDetails({
name: item,
category: 'Entree',
imagepath: 'no-image.jpg'
});
return $('#app').html(view.render().el);
},
itemForm: function() {
return $('#app').html("New item form");
}
});
app = new AppRouter();
Backbone.history.start();
}).call(this);
/*
//@ sourceMappingURL=app.map
* /
我哪里做错了?
2条答案
按热度按时间lokaqttq1#
试着这样做:
cyvaqqii2#
您错误地使用了
this
关键字。this指向的范围不包含属性选项。您应该改为执行类似以下的操作