观察组件中的Ember数据存储变化



我有一个组件,该组件为这样的特定模型创建记录:

export default Ember.Component.extend({
    store: Ember.inject.service(),
    addRecord(account) {
      this.get('store').createRecord('update', {
        authUid: account.get('authUid'),
        service: account.get('platform')
      });
    }
});

我有另一个组件,需要观察对特定模型进行的更改(即,如果添加或删除了记录),并将其显示在该组件中。

export default Ember.Component.extend({
    store: Ember.inject.service(),
    observeStoreChanges: /*What should I write so that every time `addRecord`
pushes record in the store, a function is executed in this component*/
});

如果您是观察者模式的粉丝:

// store.js
export default DS.Store.extend(Ember.Evented, {
    createRecord() {
        const record = this._super.apply(this, arguments);
        this.trigger('recordCreated', record);
        return record;
    }
});
// component.js
export default Ember.Component.extend({
    observesStoreChanges: function(record) {
    }.on('store.recordCreated')
});

最新更新