@aiao/rxdb-adapter-sqlite-wasm
v0.0.20
Published
RxDB SQLite 适配器,基于 [@subframe7536/sqlite-wasm](https://github.com/subframe7536/sqlite-wasm)。
Downloads
110
Readme
@aiao/rxdb-adapter-sqlite-wasm
RxDB SQLite 适配器,基于 @subframe7536/sqlite-wasm。
与 @aiao/rxdb-adapter-wa-sqlite 共享 @aiao/rxdb-adapter-sqlite-core 中的核心能力;差异在于底层 SQLite WASM 由 subframe 包提供(自定义 wa-sqlite,支持 FTS5 / UPDATE DELETE LIMIT,内置 typesafe VFS 预设)。
支持的存储(VFS 预设)
| vfs 取值 | 说明 | 运行环境 |
| ------------ | --------------------------------------------- | --------------- |
| memory | 纯内存,MemoryVFS | 主线程/Worker |
| idb | IndexedDB,IDBBatchAtomicVFS | 主线程/Worker |
| idb-memory | 内存 + IndexedDB 镜像,IDBMirrorVFS | 主线程/Worker |
| opfs | OPFS,OPFSCoopSyncVFS | 必须 Worker |
| fs-handle | 本地文件/OPFS FileHandle,OPFSAnyContextVFS | 主线程/Worker |
用法
import { RxDB, SyncType } from '@aiao/rxdb';
import { RxDBAdapterSqlite } from '@aiao/rxdb-adapter-sqlite-wasm';
const rxdb = new RxDB({ dbName: 'demo', entities, sync: { local: { adapter: 'sqlite-wasm' }, type: SyncType.None } });
rxdb.adapter(
'sqlite-wasm',
async db =>
new RxDBAdapterSqlite(db, {
vfs: 'idb',
wasmUrl: new URL('@subframe7536/sqlite-wasm/wasm-async', import.meta.url).href
})
);
await rxdb.connect('sqlite-wasm');