封装云存储增删改查

65 阅读1分钟

在根目录下创建database文件夹,内部创建index.js文件

//连接云数据库
const db = wx.cloud.database()
class HYCollection {
    constructor(collectionName) {
        this.collection = db.collection(collectionName)
    }
    //增
    add(data) {
        return this.collection.add({
            data
        })
    }
    //删(默认根据id删一条数据)
    remove(condition, isDoc = true) {
        if (isDoc) {
            return this.collection.doc(condition).remove()
        } else {
            return this.collection.where(condition).remove()
        }
    }
    //改(默认根据id改一条数据)
    update(condition,data, isDoc = true) {
        if (isDoc) {
            return this.collection.doc(condition).update({data})
        } else {
            return this.collection.where(condition).update({data})
        }
    }
    //查(默认根据规则查多条数据)
    get(offset = 0, size = 20, condition = {}, isDoc = false) {
        if (isDoc) {
            return this.collection.doc(condition).get()
        } else {
            return this.collection.where(condition).skip(offset).limit(size).get()
        }
    }
}
//暴露集合方法(要对云数据库中的几个集合操作就复制下面的创建几行暴露)
//c_favor:云存储中集合名称
//FavorCollection:暴露方法的名称
export const FavorCollection = new HYCollection('c_favor')

使用

//在组件js页面引入
import {FavorCollection} from '../../database/index'
//封装的add方法直接传数据即可
const addRes = await FavorCollection.add(this.properties.itemData)