什么是 IndexedDB?
IndexedDB 是一种浏览器内置的 NoSQL 数据库,其目的是为 web 应用程序提供持久存储。
IndexedDB 允许您在客户端上存储结构化数据,并提供了一个 API 来访问该数据。IndexedDB 支持存储大量数据,并且支持高效的索引和查询。
什么是 idbwrapper?
idbwrapper 是一个简单易用的库,它将 IndexedDB 的 API 封装成更加容易使用的形式。它提供了一个简单的接口来处理存储和检索数据。
安装和使用
安装:
npm install idbwrapper --save
引入:
import idb from 'idbwrapper';
创建数据库:
let dbPromise = idb.open('myDatabase', 1, upgradeDb => { let store = upgradeDb.createObjectStore('myObjectStore', {keyPath: 'id'}); store.createIndex('index', 'name'); });
在这个例子中,我们创建了一个名为 myDatabase
的数据库,并创建了一个名为 myObjectStore
的 Object Store。这个 Object Store 中的对象都具有一个名为 id
的属性作为唯一键,并创建了一个名为 index
的索引,该索引基于对象的 name
属性。
添加数据:
-- -------------------- ---- ------- ----------------- -- - --- -- - ------------------------------- ------------- --- ----- - -------------------------------- --- ------- - - --- -- ----- ----- ---- -- ------------------- ------ ------------ ---------- -- - ----------------- ----- ---------------- ---
在这个例子中,我们打开了名为 myDatabase
的数据库,并将一个新的对象添加到名为 myObjectStore
的 Object Store 中。
检索数据:
-- -------------------- ---- ------- ----------------- -- - --- -- - ------------------------------- ------------ --- ----- - -------------------------------- --- ----- - --------------------- ------ --------------- ------ -------------- -- - -------------------- ---
在这个例子中,我们检索了名为 myObjectStore
的 Object Store 中具有 name
属性为 John Doe
的对象。
总结
idbwrapper 是一个方便易用的 IndexedDB 库。它提供了一个简单的接口来处理存储和检索数据,使得使用 IndexedDB 变得更加容易。
虽然 IndexedDB 比较难以理解和使用,但是通过使用 idbwrapper,您可以快速上手并开始在浏览器中存储和检索数据。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/36043