InDB开发

包的安装和使用

InDB是一个npm包,通过npm进行安装:

npm i indb

安装之后,你可以根据你的编程需求选择不同的使用方式:

// webpack
import InDB from ‘indb‘
// CommonJS
const { InDB } = require(‘indb‘)

在HTML中直接使用时,你需要把indb/dist/indb.js文件拷贝到你的本地目录:

<script src="./node_modules/indb/dist/indb.js"></script>
<script>
const { InDB } = window[‘indb‘] // 注意这里的使用方法
</script>

使用

 

参数列表

在进行InDB实例化时,需要传入参数:

  • name: 字符串,数据库名称
  • version: 正整数,数据库结构的版本,调整数据库结构时,需要升级version
  • stores: 数组,用以定义当前数据库中每个store的结构
    • name: 字符串,store名称
    • keyPath: 字符串,store keyPath
    • indexes: 数组,用以定义store的索引
      • name: 字符串,索引名称
      • keyPath: 字符串,索引的keyPath
      • unique: boolean,该索引是否是唯一的,不允许同一个store中同索引名存在两个及以上的索引值
    • isKv: boolean,是否开启key-value模式,为true时keyPath和indexes无效

 

const { InDB } = window[‘indb‘]

const idb = new InDB({
name: ‘mydb‘,
version: 1,
stores: [
{
name: ‘store1‘,
keyPath: ‘id‘,
},
{
name: ‘store2‘,
isKv: true,
},
],
})

const store1 = idb.use(‘store1‘)
const store2 = idb.use(‘store2‘)

;(async function() {
// put and get data
await store1.put({ id: ‘key1‘, value: ‘value2‘ })
await store1.put({ id: ‘key2‘, value: ‘111111111‘ })
const obj = await store1.get(‘key1‘)

// use like key-value storage (as localStorage do)
await store2.setItem(‘key‘, ‘value‘)
console.log(obj)
console.log(await store2.get(‘key‘))
getkey=await store1.get(‘key2‘)
alert(getkey.id)
alert(getkey.value)
console.dir(await store1.get(‘key2‘))
})()

 

InDB开发

上一篇:mysql json 数组查询


下一篇:docker安装运行mysql容器