【发布时间】:2017-05-30 03:17:26
【问题描述】:
我将 Ember 与 Electron 结合使用。
由于用户可以为应用定义一些设置,我认为将设置数据存储在本地存储中是一个不错的主意。
为此,我使用 ember-local-storage 适配器。
存储、删除和显示这些数据就像一个魅力但是 这些设置应该在某些功能中使用,所以我想将它们从本地存储中取出。 我期望一个数组或 JSON 对象,甚至与本地存储中显示的格式相同。但我只收到一个巨大的抽象对象?!
这是我想要存储的(例如):
{"identifier":"identifier1","bid":"6653ggd245","name":"test1"}
{"identifier":"identifier2","bid":"kkhd7765vv","name":"test2"}
这是本地存储(开发工具)中显示的内容:
{"buttons":
{"records":
{"i7lvj":{"id":"i7lvj","identifier":"identifier1","bid":"6653ggd245","name":"test1"},"i80vm":{"id":"i80vm","identifier":"identifier2","bid":"kkhd7765vv","name":"test2"}
}}}
这是我尝试访问数据的方式:
this.get('store').findAll('buttons').then(function(SavButtons){
console.log(SavButtons);
});// gett all stored buttons
this.get('store').findRecord('buttons','i7lvj').then(function(SavButtons){
console.log(SavButtons.data);
});// get specific button -> works
此数据是生成参数数组以用于 API 请求的 Promise 的基础。 我该怎么做才能使这个结构成为可重用的结构? 例如: 0:{记录1} 1:{记录2}
或者是否有更简单/更好的方法来存储用户在应用关闭后所做的设置,也许我遗漏了一些东西。
非常感谢!
【问题讨论】:
-
你可以尝试
toArray方法转换成普通数组。或者使用forEach遍历并构建所需的结构并使用本地存储适配器存储并检索它。
标签: ember.js ember-data electron ember-local-storage