初始化项目
-
使用开发工具的使用云开发,创建默认程序,小程序开发工具会创建很多自带的内容
image.png -
不是用小程序开发,创建应用,自己配置云开发内容。
image.png
配置云开发到项目中
- 在project.config.json中增加
"cloudfunctionRoot": "cloudfunctions/", // 这个值是云函数文件夹的名称
image.png
- app.js中配置云环境env ,环境ID到云开发中设置里面找。
App({
onLaunch: function () {
if (!wx.cloud) {
console.error('请使用 2.2.3 或以上的基础库以使用云能力')
} else {
wx.cloud.init({
// env 参数决定接下来小程序发起的云开发调用
//(wx.cloud.xxx)会默认请求到哪个云环境的资源
// 此处请填入环境 ID, 环境 ID 可打开云控制台查看
// 如不填则使用默认环境(第一个创建的环境)
env:"test2020-owyyn",
})
}
}
})
- 在根目录下创建cloudfunctions文件夹(名字可以自定义),创建完成在开发者工具上右击这个文件夹 “选择当前环境”(当前环境需要提前在云开发中取创建)
image.png
创建云函数
- 在cloudfunctions文件夹上右击,选择 "新建node云函数" ,输入名称后会自动创建目录并上传(例如我创建的是一个 add文件夹)
- 在add文件夹下的index.js中定义自己的函数
// 云函数入口文件
const cloud = require('wx-server-sdk')
cloud.init()
// 云函数入口函数
exports.main = async (event, context) => {
let a = event.a;
let b = event.b;
let c = a + b;
return c;
}
- 在add文件夹上右击选择 “ 上传并部署:云端安装依赖(不上传node-modules)”,等待上传成功才能生效,只要是云函数修改都必须要重新上传才能生效
image.png
使用云函数
- 例如在 pages/index/index.js定义一个函数使用云函数
const app = getApp()
Page({
// 第一个云函数
addNums() {
// 调用云函数
wx.cloud.callFunction({
name:'add',
data:{
a:1,
b:2,
},
success:res => {
console.log('成功', res)
},
fail:res => {
console.log('失败',res)
}
})
},
})
- 编译运行
pages/index/index.wxml中内容
<!--index.wxml-->
<view class="container">
<!-- 云函数获取加法-->
<button bindtap="addNums" type="primary"> 云函数加法 </button>
</view>
image.png