如何在Polymer中使用app indexeddb mirror持久保存我的自定义数据
我正在使用如何在Polymer中使用app indexeddb mirror持久保存我的自定义数据,polymer,indexeddb,Polymer,Indexeddb,我正在使用app indexeddb mirror组件将脱机数据存储在indexeddb缓存中。我让它与以下代码一起工作 <app-indexeddb-mirror key="travels" data="{{data}}" persisted-data="{{persistedData}}"> </app-indexeddb-mirror> <firebase-query app-name="projectMeta" path="/travel
app indexeddb mirror
组件将脱机数据存储在indexeddb缓存中。我让它与以下代码一起工作
<app-indexeddb-mirror
key="travels"
data="{{data}}"
persisted-data="{{persistedData}}">
</app-indexeddb-mirror>
<firebase-query
app-name="projectMeta"
path="/travel"
data="{{data}}">
</firebase-query>
首次尝试写入我的数据对象:
this.$.readCache.setStoredValue(key, data).then(function(res) {
console.log("success")
});
this.set("liveData", newval.data);
第二次尝试写入我的数据对象:
this.$.readCache.setStoredValue(key, data).then(function(res) {
console.log("success")
});
this.set("liveData", newval.data);
在控制台中,我得到:
但是当我在控制台中查看
应用程序选项卡下的以查看indexeddb下存储的所有内容时,它仍然是空的?就我所见,您无法使用此组件真正“保存”脱机数据。它将在数据每次更改时更新数据的版本,并将其保存,在脱机情况下,它将仅为持久化数据中的存储值提供服务,而不保存它们
事实上,一旦您再次联机,firebase查询检索到的数据的联机版本将删除所有更改
如果要保存脱机更改,则必须使用为数据提供服务的组件,幸运的是firebase文档具有脱机功能,因此只需使用它保存数据,就可以正常工作
至少这是我在一个宠物项目上所做的,而且似乎很有效
诚恳地:)