微信小程序云函数使用方法

1、如何新建一个云函数

在微信开发者工具中打开云项目,cloudFunction文件夹用来存放云函数,系统默认提供了名为login的云函数,我们可以在index.js里面看到函数的最后可以返回用户的openid等内容,现在我们建立一个自己的云函数,点击cloudFunction文件夹,右键“新建node.js云函数”,命名后会直接上传更新云函数,打开“云开发控制台”,点击“云函数”可以看到函数已经上传成功

2、云函数编写以及发布

我们在新建的云函数文件夹下可以看到index.js和package.json两个文件,package.json文件暂时不用,在index.js中编写相关逻辑代码

// 云函数入口文件
const cloud = require('wx-server-sdk')cloud.init()// 云函数入口函数
exports.main = async (event, context) => {const wxContext = cloud.getWXContext()return {event,openid: wxContext.OPENID,appid: wxContext.APPID,unionid: wxContext.UNIONID,}
}

这是系统默认提供的代码,仔细一看跟系统自带的login函数的index.js文件一模一样,现在假设我们要对集合进行增删改查,如何编写代码:

// 云函数入口文件
const cloud = require('wx-server-sdk')cloud.init({env: 'ty520-k6iez'   //这里填你设置的环境ID//环境ID的查看在“云开发控制台”->“设置”->“环境设置”中查看}
)
const db = cloud.database()
const _ = db.command
// 云函数入口函数
exports.main = async (event, context) => {const targetDB = db.collection(event.db)//return targetDBtry {console.log(event);if (event.type == "insert") {return await targetDB.add({data: event.data,success: res => {console.log("添加纪录成功", res);},fail: res => {console.log("添加纪录失败", res);}})}if (event.type == "update") {return await targetDB.doc(event.indexKey).update({data: event.data})}if (event.type == "delete") {return await targetDB.doc(event.indexKey).remove()}if (event.type == "get") {return await targetDB.where(event.condition).get()}} catch (e) {console.error(e)}
}

这个函数即可以实现增删查改,非一个集合,而是对所有集合

3、云函数的发布

回到微信开发者工具,点击云函数->右键,我们发现有两个上传并部署,一个云端安装依赖,一个是所有文件,如果你安装了wx-server-sdk可以选择第二个,如果没有,选择第一个,如何判断是否安装,放心会有提示。ok,我们现在选择第一个

4、云函数的使用

wx.cloud.callFunction({name: 'forum_update',  //你的云函数名称data: {type: 'update',   //data所有的变量都是关联云函数的,按照编写的云函数需要的变量来db: 'forum',  //需要操作的集合indexKey: this.data._id,  data: {comment: this.data.Comment,comment_number: this.data.forum[0].comment_number},success: res =>{console.log(res.result)},fail: err =>{console.error(err)}}})

最后记住每次更改云函数代码后都要记得重新上传一遍,关于云函数的使用如何查看数据(比如你写了一个console),可以在云函数日志中查看(“云开发控制台”->“云函数”->“日志”)

微信小程序云函数使用方法相关推荐

  1. 微信小程序云函数使用教程【超详细】

    背景需求 在本人的项目中,需要调用一个http的接口,而微信小程序所有的网络请求都得使用https,因而需要一个中转站,使得在正式发布的时候可以使用http接口.(在调试环境下,只要在本地设置里勾选& ...

  2. 微信小程序云函数操作云数据库Mysql

    微信小程序云函数操作云数据库Mysql 参考一 参考二 云函数是一段运行在云端的代码,无需管理服务器,在开发工具内编写.一键上传部署即可运行后端代码. 小程序内提供了专门用于云函数调用的 API.开发 ...

  3. 微信小程序云函数构建npm,找不到node_modules以及后续出现上传所有文件,并没有上传node_modules的文件问题

    最近研究下微信小程序云函数,在构建npm的时候困扰了很久,总是提示找逼到node_modules,之前一直也没接触过nodejs,不想购买服务器,选择尝试下云开发. 出现这个错误在网上找了很多,都没找 ...

  4. 微信小程序云函数服务器,微信小程序云函数使用的几点说明

    微信小程序云函数是一个好东西,相当于微信为我们提供了一个可以跑node.js的服务器,并且可以外部通过API的方式调用云函数,不过微信的文档一向写的不明不白,初学的时候踩了不少坑,在这里记录下来. 1 ...

  5. 微信小程序云函数中的数据处理后返回

    微信小程序云函数中的数据处理后返回 本文主要演示的是,在微信云函数中调用数据库后,如何对获取的内容在云函数内处理后返回. 主函数 exports.main = async (event, contex ...

  6. 微信小程序云函数--数据库集合使用

    微信小程序云函数--数据库集合使用 1.首先,准备和配置好云函数的路径和文件信息 参考我的上一篇:https://blog.csdn.net/u010326875/article/details/10 ...

  7. 微信小程序云函数开发环境 node.js的安装参考

    微信小程序云函数开发环境 node.js的安装参考 下载:nvm-windows 下载下图安装包,地址在: https://github.com/coreybutler/nvm-windows/rel ...

  8. 微信小程序云函数获取近七天或近一个月的数据,使用云开发已修复时区的问题

    使用了云开发的微信小程序,就不能方便地用mysql的to_days函数处理,获取关于时间的数据 思路: 查询微信小程序文档后考虑使用聚合操作 不可能只是去获取一个固定时间,而是一个区间的时间段 Com ...

  9. 记一次微信小程序云函数操作Mysql数据库

    一.前因 在制作课程设计的时候需简单地操作Mysql数据库使得小程序可以与其他端系统进行数据交互 这时候问题来了,仅仅只是因为一个插入表的数据库操作就单独制作一个Servlet看似又有点浪费服务器资源 ...

  10. 微信小程序云函数请求接口

    微信小程序的请求数据方式 小程序端 云函数 发送方法 wx.request({}) 下载第三方ajax库(request) 协议支持 只支持https 根据第三方库决定 是否备案 经过ICP备案 可以 ...

最新文章

  1. LiveVideoStackCon 2018日程(草稿)发布
  2. Python远程操作Oracle实现一键备份还原数据库演示,利用socket进行imp、exp一键导入导出oracle数据库dmp文件
  3. 16进制数怎么判断正负
  4. 代理、委托、钩子与打桩
  5. 子函数的指针释放问题
  6. vim上下左右键输出A B
  7. openssl、libosip2、libeXosip2三个库的编译过程
  8. ajax出错并返回整个页面html的问题,【提问】ajax请求返回整个html页面
  9. 索引大小对语句执行速度的影响
  10. vmware硬件兼容官方查询地址
  11. 说下我常用的几个精简版系统的感受
  12. 德标螺纹规格对照表_螺栓螺母德标 欧标 国标对照表
  13. 医疗相关计算机系统,智能医疗信息管理系统
  14. docker 镜像启动成功但是无法访问
  15. 电路里的希腊字母读音
  16. KiCad 泪滴插件 teardrop plugin
  17. linux 安装软件 垃圾,Ubuntu 18.04 安装垃圾清理工具 BleachBit 2.2
  18. 前端项目微金所1 - bootstrap模板,Compatible(兼容),Viewport(视口),条件注释,第三方依赖,MediaQuery媒体查询...
  19. 设计模式之 Interpreter(解释器) 通俗理解
  20. bzoj3208 花神的秒题计划Ⅰ

热门文章

  1. 计算机教师继续教育心得,教师继续教育个人总结(通用5篇)
  2. 队列的图文介绍及C/C++的实现实例(转自http://www.cnblogs.com/skywang12345/p/3562279.html)
  3. A股市场周内效应研究
  4. win10扬声器红叉_win10 小喇叭红叉 未安装任何音频输出设备
  5. win10解决未安装任何音频输出设备
  6. 两个正态总体均值差的检验(t)
  7. wkhtmltopdf工具将html转换为pdf
  8. vue搭配three.js创建3D旋转方块
  9. 小白教程系列——C盘满了,将C盘扩容
  10. Mac上制作Mac os10.12.6启动盘的多次尝试