云函数查询数据库,update不能正常执行?
db.collection('contact').where({
_openid: db.command.eq(app.globalData.openid)
}).get({
success: res => {
console.log(res.data.length)
if (res.data.length == 0) {
db.collection('contact').add({
data: {
name: iname,
number: inumber,
com: icom,
grade: igrade
},
success: res => {
wx.showToast({
icon: 'none',
title: '新增记录成功',
})
console.log('[数据库] [新增记录] 成功,记录 _id: ', res._id)
},
fail: err => {
wx.showToast({
icon: 'none',
title: '新增记录失败'
})
console.error('[数据库] [新增记录] 失败:', err)
}
})
}
else {
//不能成功调用?
console.log('touch')
db.collection('contact').doc(this.data._id).update({
data: {
name: iname,
number: inumber,
com: icom,
grade: igrade
},
success: res => {
console.log('[数据库] [更新记录] 成功,记录 _id: ', res._id)
},
fail: err => {
console.error('[数据库] [更新记录] 失败:', err)
}
})
}
},
fail: err => {
console.log('fail to check')
}
})
需求:当数据库中没有该openid对应的记录,则新增,若存在,则更新
问题:当存在记录时,代码运行到else,就没update不能正常调用