Backbone.js保存错误

时间:2013-01-30 15:43:05

标签: backbone.js backbone-views backbone-events

我在骨干问题上摸不着头脑......

我有一个骨干视图,其中一个事件调用一个保存当前模型的函数。

它是一个简单的表单,在视图中我在同步模型之前做了一些验证。

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

编辑#2 这是我的模特

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
    }
  }


});

2 个答案:

答案 0 :(得分:1)

我确切地知道这个问题。我不久就有这个问题了。我看到的第一件事是堆栈跟踪,就像上面的评论中我得到了下划线的扩展问题。您需要做的是将backbone.js,underscore.js和backbone-localstorage.js(如果有的话)更新到最新版本。问题在于版本控制!

答案 1 :(得分:0)

原来这个问题与Jerome的Backbone.localStorage的修改版本有关,它允许在应用程序中进行远程和本地存储。我更换了最新的localStorage适配器,一切正常。不幸的是我无法找到原始来源通知。