通过使用IndexedDB API,我们有以下两种方法:getAll()
和getAllKeys()
,下面是一个使用示例:
let transaction = this.db.transaction(["table"]);
let object_store = transaction.objectStore("table");
request = object_store.getAll(); /* or getAllKeys() */
request.onerror = (event) => {
console.err("error fetching data");
};
request.onsuccess = (event) => {
console.log(request.result);
};
问题在于getAll()
似乎仅以数组格式检索数据,而getAllKeys()
获取所有键但不包含数据。我找不到一种同时获取键和值的方法。
难道没有更好的方式能够一次调用获取数据和键吗,就像它们存储在内存中一样?
如果没有,那么有没有更好的方式可以处理这个问题,而不会让代码过于混乱,产生多个异步调用的情况?