小程序请求数据库这段代码怎么进行封装或者合并?或者有什么好方法简写。望告知
1条回答 默认 最新
- m0_54204465 2023-01-11 09:46关注
一种方法是将这些方法封装在一个函数中,例如:
function getDataFromFirestore(collectionName, callback) { db.collection(collectionName).get().then(res => { wx.stopPullDownRefresh() callback(res.data) }) } // 使用时 getDataFromFirestore('lunbot', (data) => { this.setData({ swiperlist: data }) }) getDataFromFirestore('p1tb', (data) => { this.setData({ pllist: data }) }) getDataFromFirestore('scl', (data) => { this.setData({ sclist: data }) })
另一种方法是使用 Promise.all() 方法来请求多个集合中的数据。并进行合并。
const getDataPromise = (collectionName) => { return new Promise((resolve) => { db.collection(collectionName).get().then(res => { wx.stopPullDownRefresh() resolve(res.data) }) }) } Promise.all([getDataPromise('lunbot'), getDataPromise('p1tb'), getDataPromise('scl')]).then(([swiperlist, pllist, sclist]) => { this.setData({ swiperlist, pllist, sclist }) })
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 求多普勒频移瞬时表达式
- ¥15 VS2022 C++的相关代码问题咨询
- ¥15 如果要做一个老年人平板有哪些需求
- ¥15 k8s生产配置推荐配置及部署方案
- ¥15 matlab提取运动物体的坐标
- ¥15 人大金仓下载,有人知道怎么解决吗
- ¥15 一个小问题,本人刚入门,哪位可以help
- ¥30 python安卓开发
- ¥15 使用R语言GD包一直不出结果
- ¥15 计算机微处理器与接口技术相关问题,求解答图片的这个问题,有多少个端口,端口地址和解答问题的方法和思路,不要AI作答