我无法弄清楚为什么会有这个例外:
未捕获错误:在状态为root.loaded.updated.uncommitted时尝试处理事件loadedData
。
这是我的控制器导致此异常:
App.TodosNewController = Ember.ObjectController.extend({
create: function(todo) {
var self = this;
todo.on('becameInvalid', function(todo) {
self.set('model', todo);
});
todo.on('didCreate', function() {
self.set('priority', '');
self.set('title', '');
self.set('due_date', '');
self.transitionToRoute('todos'); // This line raises exception!
});
todo.save();
}
});
但有趣的是,这段代码运行良好,但它有错误 - 它可以在内存上创建大量模型记录:
App.TodosNewController = Ember.ObjectController.extend({
create: function() {
var data = this.getProperties('title', 'priority', 'due_date');
var todo = App.Todo.createRecord(data);
var self = this;
todo.on('becameInvalid', function(todo) {
self.set('model', todo);
});
todo.on('didCreate', function() {
self.set('priority', '');
self.set('title', '');
self.set('due_date', '');
self.transitionToRoute('todos');
});
todo.save();
}
});
感谢大家,感谢您的回复。
答案 0 :(得分:0)
解决方案是删除这些行:
self.set('priority', '');
self.set('title', '');
self.set('due_date', '');