我的应用程序是使用骨干构建的。我试图在模型中使用的destroy()时遇到问题,这是错误堆栈我在Chrome中得到:骨干 - >不能调用方法'删除'未定义
Uncaught TypeError: Cannot call method 'remove' of undefined backbone-min.js:34
f.extend.remove backbone-min.js:34
g.Events.trigger backbone-min.js:9
f.extend.destroy.d backbone-min.js:14
f.extend.destroy backbone-min.js:14
Backbone.Model.extend.remove ticketModel.js:21
Backbone.View.extend.deleteTicket ticketListView.js:44
b.each.b.forEach underscore-min.js:11
Backbone.View.extend.deleteTicketTickets ticketListView.js:49
f.event.dispatch jquery-1.7.2.min.js:3
f.event.add.h.handle.i
任何想法,这可能是?
导致错误的代码是从字面上只是:
model.destroy();
模型并确实包含一个模型作为console.log(model)
记录对象到控制台,因为它应该。
这里的模型定义:
define([
'apiEndpoint'
],function(apiEndpoint) {
var TicketModel = Backbone.Model.extend({
url: apiEndpoint.url,
isTicket : function(){
return (this.type === 'ticket') ? true : false;
},
isTask : function(){
return (this.type === 'task') ? true : false;
},
//Tells you if the view is selected for bulk actions
defaults : {
isSelected: false
},
remove : function(){
this.destroy({success: function(){
console.log('success');
}});
}
});
return TicketModel;
});
将相关代码添加到您的问题 – Esailija 2012-07-27 11:31:21
做到了这一点。希望更清楚 – nimrod 2012-07-27 11:37:12
我的意思是模型定义代码 – Esailija 2012-07-27 11:38:37