浏览器 IndexedDB 数据库常见 api 封装,详情:一篇文章学会 IndexedDB
npm i qiao.db.js
使用
// cjs
const { listDB, delDB, DB } = require('qiao.db.js');
// mjs
import { listDB, delDB, DB } from 'qiao.db.js';
列出所有的本地数据库
- return
- 类型: array
- 说明: 数据库库列表
-
[ { name: 'db', version: 1, }, ];
await listDB();
删除某个数据库
- databaseName
- 类型: string
- 说明: 数据库名称
- return
- 类型: boolean
- 说明: 成功则返回 true
await delDB(databaseName);
创建 DB 实例
- databaseName
- 类型: string
- 说明: 数据库名称
- return
- 类型: db
- 说明: DB 实例
const db = await DB(databaseName);
创建一个数据库表
- tables
- 类型: object
- 说明: 数据库表结构
-
[ { name: 't_test1', key: 'id', index: [ { name: 'name', index: 'name', unique: false, }, ], }, ... ];
- return
- 类型: array
- 说明: 返回表信息数组
-
[ { name: 't_test1', key: 'id', index: [ { name: 'name', index: 'name', unique: false, }, ], }, ];
await db.createTable(tables);
删除一个数据库表
- tableName
- 类型: string
- 说明: 数据库表名称
- return
- 类型: boolean
- 说明: 成功则返回 true
await db.delTable(tableName);
清空数据
- tableName
- 类型: string
- 说明: 数据库表名称
- return
- 类型: boolean
- 说明: 成功则返回 true
await db.clear(tableName);
按索引获取所有数据
- tableName
- 类型: string
- 说明: 数据库表名称
- indexName
- 类型: string
- 说明: 数据库表名称
- return
- 类型: array
- 说明: 数据列表
await db.all(tableName, indexName);
获取,设置,删除数据
- tableName
- 类型: string
- 说明: 数据库表名称
- key
- 类型: string
- 说明: 只传入 key 时,获取信息
- value
- 类型: any
- 说明:
- 设置信息时,传入 key 和 value
- 删除信息时传入 null
- return
- 类型: any
- 说明: 获取信息是返回 value,其他返回操作结果
await db.data(tableName, key, value);