【问题标题】:How to return output of a firebase function to the global variable of index.js file如何将 firebase 函数的输出返回到 index.js 文件的全局变量
【发布时间】:2021-04-05 12:08:02
【问题描述】:

我正在制作一个包含以下全局变量和常量的 firebase 函数文件:

const cloudRegion = 'asia-east1';
var deviceId = 'esp32_25CA4C';
...

我也在尝试创建一个 firebase 函数来将“deviceID”变量交换为另一个值。这个firebase函数是一个HTTPSCallable函数,当我提交表单时调用,表单的内容将用于更改全局变量

下面是函数本身的代码:

exports.insertDevice = functions.https.onCall((data, context) =>{
  deviceID = data.text;
  return
});

函数运行没有任何错误,但我不太确定全局变量是否真的发生了变化。

非常感谢任何帮助,谢谢!

【问题讨论】:

  • 尝试这种方式,将 deviceId 设为 const 并运行您的代码。如果您的代码抛出错误说 const 不能更改,那么可以确认您的 deviceId 正在函数内部被访问。然后恢复您的 const 更改。

标签: javascript database firebase google-cloud-firestore google-cloud-functions


【解决方案1】:

答案很简单,如果您的函数位于具有变量的 Cloud Function 的同一个实例中并且变量的范围是全局的,那么您将可以访问它。

documentation中提到的:

如果您在全局范围内声明变量,则其值可以在后续调用中重复使用,而无需重新计算。

换句话说,全局变量将具有实例范围。

【讨论】:

    猜你喜欢
    • 2020-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多