为已有的集合新增一个字段
今天在写音乐播放器,原本就只想着实现搜索和收藏功能模块,于是在构建JSON数据时就没添加歌手相应描述字段。
集合数据以及效果图如下
但是写完以上两个功能后,想多增一个推荐歌手模块,希望效果如下
那么问题来了,整个集合中的每条记录,都为没有对歌手的相关描述字段,此时呢我们就想到对集合中的每条记录新增该字段,我们没有办法只用update来完成该操作,那么此时我们可以先取出所有数据然后对每条记录进行操作,具体操作如下:
const allsongs = app.globalData.db.collection('allsongs') allsongs.where({ _openid: app.globalData._openid }).get({ success(res) { // res.data 包含该记录的数据 console.log(res.data) res.data.forEach(function(element,index){ app.globalData.db.collection('allsongs').doc(element._id).update({ // data 传入需要局部更新的数据 data: { // 表示将 done 字段置为 true description: 'sss' }, success(res) { console.log(res.data) } }) }) that.setData({ allsongs: res.data }) } })
得到的集合结果如下
当你微笑的时候,全世界都会对你微笑。