一、开通
1、开发工具---云开发按钮,然后输入一个环境名称test123
2、开通完成后,可以看到云开发控制台,可以往上面存取数据等操作。不用使用服务器。
3、新建小程序时需要勾选云开发配置
4、新建完成后,开发工具会生成一个基本demo项目,以后写的云函数可以放到这个文件夹下,它可以部署写的函数
上传到云函数库上面,也可以从云函数库中同步云函数下来调用
5、部署自定义的函数为云函数
(1)、官方在cloudfunctions下已经写好了两个函数,分别放在login(用于获取用户openid)和openapi文件夹中,注意文件夹的图标是一个普通文件夹的图标
(2)、右键点击login文件夹,点击创建并部署
(3)、等待一小会,待它同步成功后,这个函数文件夹图标会变成一朵小云儿:
6、可以在云开发控制台中查看到上传成功的云函数
7、可以点击右边的云端测试
8、上传成功后,点击初识页面的获取openid即可获取成功
9、效果:
获取得到的openID:owSvY5Zd0H6r4PdnINI07-aWJWwA
注:可以在云函数控制台中查看到记录,openid等信息
二、新建项目自己搭建云函数环境
1、新建项目时先不用使用云服务
2、新建一个文件夹:cloudfunctions1来存放云函数
3、在全局文件project.config.json中添加配置的文件夹:
4、重新编译一次,文件夹图片就会变成一个云朵
注:若没变成云朵,可以右键点击文件夹,配置一下云环境
5、在全局文件app.js中的onlaunch下初始化云环境
if (!wx.cloud) {
console.error('请使用 2.2.3 或以上的基础库以使用云能力')
} else {
wx.cloud.init({
traceUser: true,
})
}
6、在云函数文件夹中新建一个云函数login2
7、新建完成后,会自动生成以下两个文件,一般package.json不用管
index.js
package.json
8、给出的默认代码就是获取openid的代码
// 云函数入口文件
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,
}
}
9、上传并部署:
10、新建页面,添加按钮,在按钮的点击事件中调用云函数
输入函数名称,结果输出
二、新建一个加法运算云函数
1、新建一个云函数命名add
2、删除自带的获取openid 的代码,删除后下面的代码就是云函数的架构,每个云函数都要这样的结构。传入的参数
存在event参数中。
3、从event中提取出传入的参数相加并返回,现在设定它传入的两个参数分别是a1和b1,后面调用传入的参数也要跟这两个变量名一样
4、云函数编写完成后,一定需要上传并部署,后面才能使用
5、在按钮的点击事件下调用