Skip to content
JavaScript

Operaciones de IndexedDB

Envolver operaciones CRUD de IndexedDB.

#indexeddb#database#storage

Code

javascript
function openDB(name, version, stores) {
  return new Promise((resolve, reject) => {
    const req = indexedDB.open(name, version);
    req.onupgradeneeded = e => {
      const db = e.target.result;
      stores.forEach(s => {
        if (!db.objectStoreNames.contains(s)) {
          db.createObjectStore(s, { keyPath: "id" });
        }
      });
    };
    req.onsuccess = e => resolve(e.target.result);
    req.onerror = e => reject(e.target.error);
  });
}