多个云函数如何优雅的切换 dev 环境、prod 环境
发布于 6 年前 作者 chaoluo 9958 次浏览 来自 问答
  • 需求的场景描述(希望解决的问题)

在使用小程序云开发,现在有2个环境,dev 和 prod,云函数里面需要调用数据库,初始化如下:

// 云函数入口文件
const cloud = require('wx-server-sdk')
 
cloud.init({
    env: 'prod-123'
})

但是每个云函数都需要指定 prod-123 才可以查询prod的数据,我的云函数比较多,每次切换2个环境还需要重复改动这些 env: ’ ',才能生效。

  • 希望提供的能力

那我如何才能在一个地方修改,让所有的云函数访问的数据库环境都生效呢?云函数里有环境变量之类的概念吗?

还望给出解答,谢谢!

5 回复

可以尝试使用函数的环境变量,将env的值设置到函数环境变量里,然后在代码里读取环境变量。

同疑惑,两个月了,所以楼主后面是怎么做的

自己写一个命令行工具,批量查找替换。

比如我,就是这么做了,同时支持用 typescript 开发云函数

还有一种取巧的方法,在本地创建两个文件夹,dev-cloudfunctions,prod-cloudfunctions,然后在project.config.json中的切换字段

cloudfunctionRoot   ,可以查看我的小程序<爱上随机数>

只弄一个云函数  但不是很优雅

目前并不能得到环境

https://developers.weixin.qq.com/community/develop/doc/00020a4bc90470749e971173951804

回到顶部