小程序云开发笔记:数据库对象数组根据查询条件匹配删除
问题描述:
今天在运用小程序云开发实现删除点赞记录这个功能点的过程中,遇到一个问题:如何实现对象数组根据查询条件匹配删除
解决思路:
我们可以通过当前用户的openid这个条件来删除添加在数组prizelist里面一个数组对象。用到的是微信官方文档的pull数组更新操作符,文档中对其的具体描述是:给定一个值或一个查询条件,将数组中所有匹配给定值或查询条件的元素都移除掉。小程序官方文档pull数组更新操作符https://developers.weixin.qq.com/miniprogram/dev/wxcloud/reference-sdk-api/database/command/Command.pull.html
解决方案
//删除点赞记录
mylike_deleteaction(e) {
console.log(e)
console.log(e.currentTarget.dataset.id)
const db= wx.cloud.database()
const _ = db.command
db.collection('message').doc(e.currentTarget.dataset.id).update({
data: {
isPrize:false,
//pull数组更新操作符
prizelist:_.pull({
//查询条件
//当前用户的openid与删除对象prizelist的openid相同
openid:_.eq(app.globalData.openid)
})
},
success(res) {
console.log(res)
wx.showToast({
title: '删除成功',
})
}
})
},
注意:_.eq()这里整数型的对比,如果数据是字符串记得转换下数据类型
_.eq(parseInt())
联系站长
友情链接
其他入口
QQ与微信加好友
粤ICP备17018681号 站点地图 www.iamdu.com 版权所有 服务商提供:阿里云 Designed by :DU
本站部分资源内容来源于网络,若侵犯您的权益,请联系删除!