Ember数据:错误时回滚createRecord

问题描述 投票:2回答:1

我正在尝试找到避免使用Ember Data发生错误时添加记录的最佳方法:

这是我的代码:

createUser: function() {
  // Create the new User model
  var user = this.store.createRecord('user', {
    firstName: this.get('firstName'),
    lastName: this.get('lastName'),
    email: this.get('email')
  });

  user.save().then(function() {
    console.log("User saved.");
  }, function(response) {
    console.log("Error.");
  });
},

我正在后端验证架构,并在失败时返回422错误。

如果我不处理该错误,则将记录添加到该站点,并且还会收到控制台错误。

所以我这样做了:

  user.save().then(function() {
    console.log("User saved.");
  }, function(response) {
    user.destroyRecord();
  });

读取服务器响应后删除记录的哪种方法,但是:

1)我看到记录的出现和消失(就像某种视觉故障会以某种方式说出来)。>>

2)控制台错误仍然出现。

是否有更好的方法来解决这个问题?我的意思是,有一种方法可以避免在服务器返回错误时添加记录?有没有办法避免显示控制台错误?

提前感谢

我正在尝试找到最佳方法,以免使用Ember Data发生错误时添加记录:这是我的代码:createUser:function(){//创建新的User模型var user = this.store。 ..

javascript ember.js ember-data
1个回答
0
投票

您需要在控制器中捕获错误,然后使用deleteRecord()将其从存储中删除:

© www.soinside.com 2019 - 2024. All rights reserved.