我有一个显示模型计数的 Controller
const BlahController = Ember.Controller.extend({
totalRows: Ember.computed('model.[]', function() {
let items = this.get('model') || [];
return items.get('length');
}),
...
})
然后,当我删除模型时,我使用 destroyRecord
执行此操作,甚至确保它已卸载
model.destroyRecord().then(() => {
this.get('store').unloadRecord(model);
}
知道为什么totalRows
永远不会更新吗?我本以为通过调用 store.unloadRecord 它实际上会从存储中删除模型并更新 Controller 中的模型数组?
路由钩子(Hook)模型是这样的
const BlahRoute = Ember.Route.extend({
model() {
return this.store.findAll('blah-model');
},
})
最佳答案
事实证明,我在 route 使用了 mixin,并且在该 mixin 中,model
函数实际上使用 this.store.peekAll().filter() 创建了一个新数组
code> 显然不会更新,因为数组现在指向另一个对象/facepalm
关于ember.js - 如何确保 Ember Data 从存储中删除缓存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41275279/