我正在尝试实现一些我认为有一个简单答案的东西,但不知怎的,我在阅读 ember-data
的源代码时找不到它。
我想在将一组特定的修改提交到数据存储后触发一个操作。这是我当前的代码:
var transaction = App.store.transaction();
user = App.get('currentUser');
transaction.add(user);
user.set('name', "Michael Jackson");
transaction.commit();
App.navigate('dashboard');
我的第一次尝试是在该用户的 isDirty
属性上添加一个观察者,但是 a) 这看起来并不惯用,更重要的是 b) 我必须在最后手动删除该观察者 -例如,如果中间出现一些异常并且没有被删除,则很容易出错。
有什么想法吗?你会怎么做?
最佳答案
您可以在模型上使用 didCreate 和 didUpdate。我假设您有一个用户模型,例如:
MyApp.User = DS.Model.extend({
first: DS.attr('string'),
page: DS.attr('string'),
didUpdate: function() {
//Do something
},
didCreate: function() {
//do something
}
});
关于ember.js - 事务提交后设置回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10571406/