# 常量

# DYNAMIC_CURRENT_ENV

支持端:云函数 1.1.0

标志当前所在环境,注意该值不是当前所在环境 ID 的字符串,其值等价于 Symbol.for('DYNAMIC_CURRENT_ENV'),是用于标志当前所在环境的。如在 init 中如果给 env 参数传该常量值,则后续的 API 请求会自动请求当前所在环境的云资源,如云函数 A 当前所在环境是 test-123,则其接下来请求数据库、文件存储、云函数时都默认请求环境 test-123 的数据库、文件存储、云函数。

常量可用于:

  • cloud.initenv 参数
  • cloud.updateConfigenv 参数
  • 各 API 的 config 参数中的 env 参数

注意事项:

  • 1.7.1 起,该变量支持在定时触发器中使用,之前的版本不支持。

# 示例

cloud.init: 设置 API 默认环境等于当前所在环境

cloud.init({
  env: cloud.DYNAMIC_CURRENT_ENV
})

cloud.database: 设置新数据库对象的调用环境等于当前所在环境

cloud.init({
  env: 'xxx'
})

// 不同于 init 时设置的环境,db 对象的请求将会去到和当前云函数所在环境相同的环境
const db = cloud.database({
  env: cloud.DYNAMIC_CURRENT_ENV
})

cloud.callFunction: 设置调用的同环境的云函数

cloud.init({
  env: 'xxx'
})

// 不同于 init 时设置的环境,对云函数 getInfo 的请求将会去到和当前云函数所在环境相同的环境
const callResult = await cloud.callFunction({
  name: 'getInfo',
  config: {
    env: cloud.DYNAMIC_CURRENT_ENV
  },
  data: {
    // ...
  },
})