登录的用户完成收藏。
1 - 编写和测试云函数
下面是云函数的代码:
'use strict';
const db = uniCloud.database()
/* 数组、字符串、数字的操作 */
const dbCmd = db.command
exports.main = async (event, context) => {
const {
user_id,
article_id
} = event
/* ① 获取当前用户的信息 */
let userinfo = await db.collection('user').doc(user_id).get()
/* ② 更新操作:获取用户信息中收藏文章的id列表 */
const article_id_ids = userinfo.data[0].article_likes_ids
/* ② 更新操作:将点赞收藏的文档id,更新到,用户的收藏文章的id列表 */
/* 使用dcCmd这是一个数据库操作符 */
let dbCmdFuns = null
if (article_id_ids.includes(article_id)) {
dbCmdFuns = dbCmd.pull(article_id)
} else {
dbCmdFuns = dbCmd.addToSet(article_id)
}
await db.collection('user').doc(user_id).update({
article_likes_ids: dbCmdFuns
})
//返回数据给客户端
return userinfo
};
云函数测试正常的。
2 - 页面操作
配置云函数调用信息;