简要介绍
微信小程序云开发,是基于 Serverless 的一站式后端云服务,涵盖函数、数据库、存储、CDN 等服务,免后端运维。基于云开发能够免鉴权调用微信所有凋谢能力。
前提筹备
- 微信开发者工具
创立环境
关上小程序我的项目,点击工具栏“云开发”进行开明:
依据对话框提醒,创立云环境:
抉择默认收费配额:
“提交订单”,创立实现。
尔后,就能够关上“云开发控制台”了:
创立云函数
云函数是一段运行在云端的代码,无需治理服务器,在开发工具内编写、一键上传部署即可运行后端代码。
首先,配置小程序我的项目。编辑 project.config.json
增加 cloudfunctionRoot
:
{
// ...
"cloudfunctionRoot": "./cloudfunction/",
"cloudfunctionTemplateRoot": "cloudfunctionTemplate"
}
并于根目录新建该目录 cloudfunction
,该目录图标会变成“云目录图标”。
而后,右键云函数根目录,“新建 Node.js 云函数”:
输出云函数名称,就会创立好模板:
应用云函数
编辑 index.js
批改成求和:
// 云函数入口文件
const cloud = require("wx-server-sdk");
cloud.init();
// 云函数入口函数
exports.main = async (event, context) => {const wxContext = cloud.getWXContext();
return {sum: event.a + event.b,};
};
event
是触发云函数的事件。小程序端调用时,就是其申请参数。return
返回云函数计算的后果。小程序端调用时,就是其响应内容。
Taro 调用云函数
Taro 是一个开放式跨端跨框架解决方案,反对应用 React/Vue/Nerv 等框架来开发 微信 / 京东 / 百度 / 支付宝 / 字节跳动 /QQ 小程序 /H5 等利用。
疾速创立小程序利用,可见 Taro3 疾速开始。
Taro 应用云开发,首先须要初始化云环境:
import Taro from "@tarojs/taro";
Taro.cloud.init({env: "gocoding-xxx",});
其中 env
环境 ID,可见“云开发控制台”的“设置”:
而后,调用该云函数:
Taro.cloud
.callFunction({
name: "photo-lucky",
data: {
a: 1,
b: 2,
},
})
.then((res) => {console.log(res);
})
.catch((err) => {console.log(err);
});
name
是云函数的名称。data
是申请参数,对应云函数的event
。
部署云函数
右键云函数目录,抉择“上传并部署”:
编译运行小程序,可见打印后果:
调试云函数
关上“云开发控制台”的“云函数”:
关上“本地调试”,右侧选中“开启本地调试”:
之后,小程序调用云函数就会进“本地调试”。
云开发服务
云函数模板中默认 require
了 wx-server-sdk
,这是一个帮忙咱们在云函数中操作数据库、存储以及调用其余云函数的微信提供的库。对于 wx-server-sdk
的应用可见 在云函数中应用 wx-server-sdk。
其余
云函数是 Node.js
利用,原想间接应用 TypeScript
开发并运行,可参考:
- Node.js QuickStart: https://basarat.gitbook.io/ty…
但其调试时默认主入口是 index.js
,试了下配置,但没什么用。报错如下:
所以,想用 TypeScript
的话,须要 tsc
编译公布出 js
后再调试。
参考
- 云开发
- Taro3 疾速开始
结语
欢送关注 GoCoding 公众号,分享日常 Coding 中实用的小技巧、小常识!