Ember.js数据如何清除数据存储

Ember.js数据如何清除数据存储,ember.js,ember-data,Ember.js,Ember Data,我正在试用Ember.js,并安装了一个小应用程序,用户可以在其中登录和注销。当用户注销时,我希望清除数据存储中当前缓存的所有记录。 是否有办法做到这一点,或者我必须强制浏览器重新加载页面?余烬数据中尚不支持清除数据存储。Github跟踪器上有一个 在模型中逐个记录删除记录删除组织共: (截至2013年8月,目前有。)看来,到今天为止,还没有一种通用的方式来完全强制商店清理。最简单的解决方法似乎是循环遍历所有类型(person,…),并执行以下操作: 如图所示是一种更干净、通用的方法。只需扩展或

我正在试用Ember.js,并安装了一个小应用程序,用户可以在其中登录和注销。当用户注销时,我希望清除数据存储中当前缓存的所有记录。
是否有办法做到这一点,或者我必须强制浏览器重新加载页面?

余烬数据中尚不支持清除数据存储。Github跟踪器上有一个

在模型中逐个记录删除记录<代码>删除组织共:


(截至2013年8月,目前有。)

看来,到今天为止,还没有一种通用的方式来完全强制商店清理。最简单的解决方法似乎是循环遍历所有类型(
person
,…),并执行以下操作:


如图所示

是一种更干净、通用的方法。只需扩展或重新打开存储&添加这样一个clear方法

DS.Store.extend({
清除:函数(){
for(此.typeMaps中的var键)
{
this.unloadAll(this.typeMaps[key].type);
}
}
});有:

App.reset();
但是我们偶尔也会看到错误,
store.pushPayload
试图将数据推送到一个标记为destromed的对象上,因为调用
App.reset()

我们一直在使用:

store.init();

它只创建了一个新的空存储,效果很好,但不幸的是,它是一个私有方法

现在可以通过
store.destroy()
来完成。它卸载所有记录,但也可立即用于重新加载新记录。我已经在
1.0.0-beta.15
中确认了这一点。文档中似乎没有,但它一直在为我工作


另一种选择是迭代商店的
typeMaps
并运行
store.unloadAll(typeMap.typeName)
,但我不确定这是否完全必要。

我知道这个问题是从2013年开始的。但是自从Ember Data 1.0.0-beta.17(2015年5月10日)以来,有一种简单的方法可以清除数据存储:

store.unloadAll()


(更多信息:)

这是删除记录,而不仅仅是从存储中删除记录。这有潜在的危险,会导致后端永久数据丢失()问题已解决,但我仍然无法在不重置应用程序的情况下清除存储:我需要清除存储以进行调试,可能会从后端重新请求数据,而不会影响应用程序的状态(例如,我想保持相同的路线)。这可能吗?我不知道它是什么时候引入的,但当前的文档说明,您只需执行
store.unloadAll()
即可卸载所有记录。
App.reset();
store.init();