美文网首页
小程序-云函数-本地调试技巧

小程序-云函数-本地调试技巧

作者: 云高风轻 | 来源:发表于2022-06-22 08:55 被阅读0次

1. 前言

  1. 本来写云开发系列的,但是发现有些内容单独拆分出来写比较方便
  2. 万事开头难,下笔如有神,😁😄

2. 云函数调试技巧

  1. 创建一个云函数playTest用作调试
  2. 加个输出调试就行, return 添加了一个字段cloudPlay
// 云函数入口函数
exports.main = async (event, context) => {
    const wxContext = cloud.getWXContext()
    console.log("云函数调试着玩--event:", event);
    console.log("云函数调试着玩--context:", context);
    return {
        event,
        cloudPlay:"假装服务器 返回的",
        openid: wxContext.OPENID,
        appid: wxContext.APPID,
        unionid: wxContext.UNIONID,
    }
}
  1. 右键开启云函数本地调试 调试.jpg
  1. 第一次会提示安装依赖 依赖.jpg
  1. 安装完可以在右键开启云函数本地调试 调试.jpg
  2. 本地调试不需上传部署云函数
  3. 如果修改了云函数,最好在每次手动部署下,以防忘记
  4. 可以配合断点进行调试

3. 页面调用云函数

  1. app.json配置测试界面 play
  2. app.json配置,这里可能很多人为了方便调试会利用小程序默认显示pages的第一个界面的特性来调试,我们不放第一个,后续通过编译模式来调试,单独后面讲如何配置
  "pages": [
        "pages/index/index",
        "pages/todoDetail/todoDetail",
        "pages/addTodo/addTodo",
        "pages/play/play"
    ],
  1. 直接在钩子里面测试调用吧
  2. 调用云函数的固定的写法 name为云函数的名字
  3. data为需要传递的参数 会被云函数第一个参数接收
  4. 还有个config配置这里没有使用
Page({
    onLoad(options) {
        this.playCloudFn()
    },
    async playCloudFn() {
        let result = await wx.cloud.callFunction({
            name: "playTest",
            data: {
                test: "参数",
                content: "类型 内容随便写"
            }
        })
        console.log("云函数 结果:", result);
    }
})

4. 编辑模式

  1. 编译模式菜单 弹出编译模式.jpg
  1. 编译模式配置 配置.jpg
  1. 修改编译模式 修改.jpg
  2. 删除编译模式 1.jpg
  3. 这个添加编译模式 在本地开发或者云开发都是可以使用的

5. 编译

  1. 点击编译开启调试
  2. 效果 演示.jpg
  3. event 就是小程序端调用云函数时传入的参数,外加后端自动注入的小程序用户的 openid和小程序的appid
  4. context对象包含了此处调用的调用信息和运行状态,可以用它来了解服务运行的情况,这里打印是空对象,可以在线上环境打印试下
  5. 返回结果是个Promise 有三个字段
  6. result云函数返回的结果
  7. requestID云函数执行 ID,可用于日志查询
  8. errMsg 提示信息
  9. 注意 传递大数据字段.
    如果 data 中包含大数据字段(建议临界值 100KB),建议使用 wx.cloud.CDN 标记大数据字段,标记后在调用云函数时,该字段的内容将会上传至临时 CDN,然后在云函数中接收到的该字段值将是 CDN url,可在云函数中下载访问。通过这种方式,可以避免大数据传输造成的性能问题、及避免触及调用链路的传输大小限制
  10. 传递 buffer
    如果在 data 中如果传入了 Buffer 类型的数据,数据在 JSON 序列化的过程中会被转成 { "type": "Buffer", data: number[] } 的格式

6. 手动触发

  1. 手动模式触发云函数调试 手动触发.jpg
  1. 点击调用 调用.png
  2. 如果点击调用没反应 重新开启云函数本地调试就行,不用百度,没有答案😭😭😭😭

7. 后记

  1. 一些开发过程的小心得,仅供参考

参考资料

微信云开发
vant


初心

我所有的文章都只是基于入门,初步的了解;是自己的知识体系梳理,如有错误,道友们一起沟通交流;
如果能帮助到有缘人,非常的荣幸,一切为了部落的崛起;
共勉

相关文章

网友评论

      本文标题:小程序-云函数-本地调试技巧

      本文链接:https://www.haomeiwen.com/subject/pteevrtx.html