BackboneJS,在保存模型时遇到成功和错误的问题

时间:2016-07-12 22:33:46

标签: javascript backbone.js

出于某种原因,我在保存模型时无法输入successerror块。我的回复是成功的“201”或错误“404”,我的代码不会命中debugger行。有谁知道会出现什么问题?

SignInView.prototype.login = function(event) {
  event.preventDefault();
  return this.model.save(this.credentials(), {
    type: 'POST',
    url: 'http://localhost:3001/api/v1/users/sign_in'
  }, {
    success: (function(_this) {
      return function(userSession, response) {
        debugger;
        return window.location.href = "/";
      };
    })(this),
    error: (function(_this) {
      return function(userSession, response) {
        debugger;
        var message;
        message = $.parseJSON(response.responseText).error;
        return alert(message);
      };
    })(this)
  });
};

1 个答案:

答案 0 :(得分:1)

save函数只接受两个参数 - 您将成功和错误函数作为第三个参数传递。请尝试以下方法:

SignInView.prototype.login = function(event) {
  event.preventDefault();
  return this.model.save(this.credentials(), {
    type: 'POST',
    url: 'http://localhost:3001/api/v1/users/sign_in',
    success: (function(_this) {
      return function(userSession, response) {
        debugger;
        return window.location.href = "/";
      };
    })(this),
    error: (function(_this) {
      return function(userSession, response) {
        debugger;
        var message;
        message = $.parseJSON(response.responseText).error;
        return alert(message);
      };
    })(this)
  });
};