Backbone.js保存错误
我在为一个有骨气的问题挠头 我有一个主干视图,其中包含一个调用保存当前模型的函数的事件 这是一个简单的表单,在视图中,我在同步模型之前做了一些验证Backbone.js保存错误,backbone.js,backbone-views,backbone-events,Backbone.js,Backbone Views,Backbone Events,我在为一个有骨气的问题挠头 我有一个主干视图,其中包含一个调用保存当前模型的函数的事件 这是一个简单的表单,在视图中,我在同步模型之前做了一些验证 this.model.save({ completed : completed, company : company, revenue : revenue, term : term, comments : comments, probability : probability }, {
this.model.save({
completed : completed,
company : company,
revenue : revenue,
term : term,
comments : comments,
probability : probability
},
{
success: function (model, response) {
console.log('success', model, response);
Evision.trackRouter.navigate("tracker/", {trigger: true});
},
error: function (model, response) {
console.log('error', model, response);
}
}
;
成功触发后,它会将我返回到我的模型集合,在那里我可以选择另一个模型进行编辑,此时我尝试保存在控制台中收到的模型,Chrome崩溃
如果我展开此错误,则表明运行上述函数存在问题,并且我的模型已在控制台中注销,但当我尝试展开它时,它是否为空
值得一提的是,在第二轮路线赛中,既没有成功也没有错误
谢谢
编辑#1
这是我在崩溃前收到的错误
<error>
w.extend
w.clone
e.extend.toJSON
_.extend.save
_.extend.update
LocalStorage.sync
Backbone.sync
e.extend.sync
e.extend.save
Evision.Views.TrackerDetail.Backbone.View.extend.saveTracker
(anonymous function)
j
原来这个问题与Jerome的Backbone.localStorage的一个修改版本有关,该版本允许在应用程序中同时使用远程和本地存储。我更换了最新的localStorage适配器,一切正常。不幸的是,我找不到原始来源通知 原来问题与Jerome的Backbone.localStorage的一个修改版本有关,该版本允许在应用程序中同时使用远程和本地存储。我更换了最新的localStorage适配器,一切正常。不幸的是,我找不到原始来源通知 我完全知道问题所在。不久前我就遇到了这个问题。我首先看到的是堆栈跟踪,就像上面的注释一样,我发现下划线有一个扩展问题。您需要做的是将backbone.js、下划线.js和backbone localstorage.js(如果有)更新到最新版本。问题在于版本控制 我完全知道问题所在。不久前我就遇到了这个问题。我首先看到的是堆栈跟踪,就像上面的注释一样,我发现下划线有一个扩展问题。您需要做的是将backbone.js、下划线.js和backbone localstorage.js(如果有)更新到最新版本。问题在于版本控制 控制台中的确切错误是什么,或者你是说Chrome实际上崩溃了,所以你不能再访问控制台了?@fencliff我已经用浏览器崩溃之前收到的错误更新了我的帖子。查看堆栈跟踪,错误发生在下划线的
extend
方法中。想不出会发生这种情况的原因。你也可以发布你的模型代码吗?@fencliff奇怪的是,这确实有效,而且保存得很好,这是我第二次尝试保存时遇到的问题。是的,这实际上非常奇怪。您使用的是下划线还是虚线,以及哪个版本?您能否在保存之前尝试console.log(this.model.toJSON())
,看看输出是否正常,或者它是否也崩溃?如果你能尝试在网上的某个地方复制这一点,那将是多么棒的事情。这里有一个已加载主干等的空tinker.io:。你能在那里得到这个错误吗?控制台中的确切错误是什么,或者你的意思是Chrome实际上崩溃了,所以你不能再访问控制台了吗?@fencliff我用浏览器崩溃之前收到的错误更新了我的帖子。查看堆栈跟踪,错误发生在下划线的extend
方法中。想不出会发生这种情况的原因。你也可以发布你的模型代码吗?@fencliff奇怪的是,这确实有效,而且保存得很好,这是我第二次尝试保存时遇到的问题。是的,这实际上非常奇怪。您使用的是下划线还是虚线,以及哪个版本?您能否在保存之前尝试console.log(this.model.toJSON())
,看看输出是否正常,或者它是否也崩溃?如果你能尝试在网上的某个地方复制这一点,那将是多么棒的事情。这里有一个已加载主干等的空tinker.io:。你能在那里得到这个错误吗?
Evision.Models.Track = Backbone.Model.extend({
defaults: function() {
return {
id : Evision.trackerList.nextOrder(),
completed : false,
created : Utils.datestamp(),
company : "",
revenue : "",
term : "",
comments : "",
probability : "",
success : null
}
}
});