主干->无法调用方法'删除'的未定义
Backbone -> Cannot call method 'remove' of undefined
我的应用程序是使用主干网构建的。当我试图在模型上使用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;
});
在您看来,为什么要调用model.destroy();
?我认为您必须调用model.remove();
,因为这是您要销毁的自定义方法。
在您的视图中,您似乎正在调用model.destroy()
和更高版本的model.remove
,但由于您已经破坏了模型,现在您正试图调用未定义对象的remove方法。
相关文章:
- 未捕获的类型错误:无法读取属性'删除'的未定义
- 隐藏或删除图像 src=未定义
- 从angularjs中的下拉列表中删除未定义的值
- 主干->无法调用方法'删除'的未定义
- 从数组中删除未定义的值
- 如何删除cookie错误注意:PHP上的未定义索引
- 如何删除未定义的对象错误并根据位置重定向用户
- 如何使用下划线从对象内的数组中删除空的、空的、未定义的值
- 删除警报时,变量将变为未定义
- 使用React删除Firebase中的项,重新渲染会返回未定义的项
- IE9无法获取属性'删除'的未定义引用或null引用
- 如何设置为未定义或删除某些部分
- 如何删除宽度是jQuery中未定义的错误
- Javascript -从对象中删除未定义字段
- 未定义:不删除javascript数组
- 删除对象成员而不留下未定义的最好方法是什么?
- 主干模型删除未定义属性
- 如何删除“未定义”?从JavaScript数组项的开始
- 如何使用 lodash 从对象中删除未定义的值和 null 值
- 删除未定义