封装一下pouchdb实现增删改查
以下是一个简单的示例,演示如何封装PouchDB实现常见的增删改查操作:
class PouchDBWrapper {
constructor(dbName) {
this.db = new PouchDB(dbName);
}
async add(doc) {
const response = await this.db.post(doc);
return response.id;
}
async get(id) {
const response = await this.db.get(id);
return response;
}
async update(doc) {
const response = await this.db.put(doc);
return response;
}
async remove(id, rev) {
const response = await this.db.remove(id, rev);
return response;
}
async getAll() {
const response = await this.db.allDocs({ include_docs: true });
return response.rows.map(row => row.doc);
}
}
使用示例:
const db = new PouchDBWrapper('mydb');
// 添加文档
const docId = await db.add({ name: 'John', age: 30 });
// 获取文档
const doc = await db.get(docId);
// 更新文档
doc.age = 31;
await db.update(doc);
// 删除文档
await db.remove(docId, doc._rev);
// 获取所有文档
const allDocs = await db.getAll();
``
原文地址: https://www.cveoy.top/t/topic/ePcM 著作权归作者所有。请勿转载和采集!