【云开发】你的第一个云函数

目录

            • 1. 介绍
            • 2. 开通云开发
            • 3. 小程序配置
            • 4. 新建云函数
            • 5. 编写云函数代码
            • 6. 小程序内调用云函数

1. 介绍

开发者可以使用云开发开发微信小程序、小游戏,无需搭建服务器,即可使用云端能力。
云开发为开发者提供完整的原生云端支持和微信服务支持,弱化后端和运维概念,无需搭建服务器,使用平台提供的 API 进行核心业务开发,即可实现快速上线和迭代,同时这一能力,同开发者已经使用的云服务相互兼容,并不互斥。

2. 开通云开发

在开发者工具工具栏左侧,点击 “云开发” 按钮即可打开云控制台、根据提示开通云开发、创建云环境。有免费云开发套餐供使用。官方文档

3. 小程序配置

(1)project.config.json文件添加配置

"cloudfunctionRoot": "functions/"

(2)小程序新建functions目录用来存放云函数
【云开发】你的第一个云函数_第1张图片
(3)functions目录创建完成后,右键该目录选择一个云环境(开通云开发时开通云环境)
【云开发】你的第一个云函数_第2张图片

4. 新建云函数

右键functions目录,选择【新建Node.js云函数】
【云开发】你的第一个云函数_第3张图片
输入云函数名称,回车即可(实际上新建的是一个文件夹)
【云开发】你的第一个云函数_第4张图片

5. 编写云函数代码

打开云函数文件夹,找到index.js(云函数入口文件),添加自己的逻辑代码

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

cloud.init()

// 云函数入口函数
exports.main = async (event, context) => {
  const wxContext = cloud.getWXContext()
  // .....
  // 新增的代码,调用云函数时,传入的参数都在 event 对象内
  // 这里取出 a,b 两个参数,相加得 sum 并返回
  sum = event.a + event.b 
   // .....
  return {
    sum,
    event,
    openid: wxContext.OPENID,
    appid: wxContext.APPID,
    unionid: wxContext.UNIONID,
  }
}

编写完成后,右键云函数文件夹,选择【上传并部署:所有文件】

6. 小程序内调用云函数

在小程序内新建一个函数testBut,从此函数内调用云函数:

testBut: function() {
    wx.cloud.init() // 初始化
    wx.cloud.callFunction({
      name: "add", // 云函数名称,即 functions 目录下的文件夹名称
      data: {
        a: 123, // 参数 a
        b: 122  // 参数 b
      },
      success: function(res) {  // 调用成功回调
        console.log(res);
      },
      fail: function() {  // 调用失败回调
        console.log('fail');
      }
    });
  }

若调用失败,尝试点击云函数文件夹,选择【上传并部署:云端安装依赖】
触发执行testBut函数,从控制台查看结果
【云开发】你的第一个云函数_第5张图片

你可能感兴趣的:(#,微信小程序,小程序)