微信小程序云开发(笔记)————修改非本人创建数据;云函数创建和使用

天哪,现在才明白官方文档是个好东西

最近开发的小程序遇到了一个问题,就是我用 update  方法只能修改自己创建的数据内容,也就是只能修改数据的 _openid 是我的 openid的数据

然后我首先想到的是百度怎么解决,百度出来的方法都差不多,自己试了半天也没整明白,然后去看了官方文档,果然就做出来了!!

下面我来做笔记

 

我想要实现的功能是:在 【users】集合内给非当前用户创建数据添加【lover】内容

微信小程序云开发(笔记)————修改非本人创建数据;云函数创建和使用

 

 

 

1.首先在云函数根目录上右键,点击【新建Node.js 云函数】

微信小程序云开发(笔记)————修改非本人创建数据;云函数创建和使用

比如我创建的这个【add_lover】云函数

微信小程序云开发(笔记)————修改非本人创建数据;云函数创建和使用

 

 

 2.打开【add_lover】下的【index.js】文件

 微信小程序云开发(笔记)————修改非本人创建数据;云函数创建和使用

内容是这样的,咱不用,咱自己写

微信小程序云开发(笔记)————修改非本人创建数据;云函数创建和使用

 我写的方法是这样的

// 云函数入口文件
const cloud = require(‘wx-server-sdk‘)

cloud.init()

// 云函数入口函数

const db = cloud.database()
// 云函数入口函数

// event 为调用此云函数传递的参数,传递的参数可通过event.xxx得到

exports.main = async (event, context) => { try {
  // 调用 update 方法
  // users 是我要修改的集合的名字
  // event.dataId 和 event.lover 是我调用此云函数带的参数
    return await db.collection(‘users‘).doc(event.dataId).update({
      // data 为 users 集合内我要修改的内容 lover 为字段名 event.lover 为要修改成的内容
      data: {
        lover: event.lover
      }
    })
  } catch (e) {
    console.error(e)
  }
}

 然后部署云函数,在【add_lover】文件右键点击【上传并部署】后出现 node.js 为部署成功

微信小程序云开发(笔记)————修改非本人创建数据;云函数创建和使用

然后在你需要的 js 文件内调用【add_lover】云函数

 wx.cloud.callFunction({
   // 云函数名称【刚刚创建的云函数文件的名字】
    name: ‘add_lover‘,
    // 传给云函数的参数
   // dataId 为我要修改的 users 集合内数据的 _id ; lover 为要修改的内容 data: { dataId: ‘3397e9015d849098014a288666f94254‘, lover: ‘girl‘, }, success: function (res) { if (res.result.errMsg == ‘document.update:ok‘){ console.log(‘调用成功‘) } }, fail: console.error })

  微信小程序云开发(笔记)————修改非本人创建数据;云函数创建和使用

 

微信小程序云开发(笔记)————修改非本人创建数据;云函数创建和使用

 

 

调用成功

 

微信小程序云开发(笔记)————修改非本人创建数据;云函数创建和使用

上一篇:微信小程序之保存图片到本地授权


下一篇:小程序使用npm