我正在构建一个带有用户注册的 ember.js Web 应用程序。如果注册失败(例如无效的电子邮件),API 会返回错误。问题是这会使模型进入错误状态,如果用户尝试再次尝试注册,Ember.js 引发错误Uncaught Error: Attempted to handle event 'willSetProperty' on <App.User:ember451:null> while in state rootState.error.
,然后似乎变得无响应。
出错后是否必须手动重置状态?
becameInvalid: function() {
// reset the state after an error
var parentState = this.get('stateManager').get('currentState').parentState.dirtyType;
if (parentState === "updated") {
this.get('stateManager').transitionTo('loaded.updated');
} else {
this.get('stateManager').transitionTo('loaded.created.uncommitted');
}
}
这似乎有点奇怪。我是否设置不正确?有没有其他方法或者我应该在错误后重置?