Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将firebase函数构造为多个运行时_Firebase_Google Cloud Functions - Fatal编程技术网

将firebase函数构造为多个运行时

将firebase函数构造为多个运行时,firebase,google-cloud-functions,Firebase,Google Cloud Functions,我已经使用firebase生态系统2年多了,但由于它缺乏像样的文档,我经常来这里问一些非常基本的问题,我们应该在“hello world”之后马上学习 当使用firebase函数时,我尝试将其模块化,以保持可读性和易于维护。我设法做到这一点的方法是拥有一个“索引”文件和多个子文件,其中包含复杂函数的逻辑… 虽然它工作得很好,但我的索引文件变得非常长,因为我有越来越多的函数,它还需要处理每个特定函数的一些配置 我在firebase仪表盘上乱搞?我发现可以在这个在线表单上创建一个新功能。。。在执行此

我已经使用firebase生态系统2年多了,但由于它缺乏像样的文档,我经常来这里问一些非常基本的问题,我们应该在“hello world”之后马上学习

当使用firebase函数时,我尝试将其模块化,以保持可读性和易于维护。我设法做到这一点的方法是拥有一个“索引”文件和多个子文件,其中包含复杂函数的逻辑…
虽然它工作得很好,但我的索引文件变得非常长,因为我有越来越多的函数,它还需要处理每个特定函数的一些配置

我在firebase仪表盘上乱搞?我发现可以在这个在线表单上创建一个新功能。。。在执行此操作时,firebase备份会以某种方式为此函数创建一个新的“运行时”。我的意思是,此表单创建的每个函数都有自己的“index.js”“package.json”

我如何才能做到这一点,而不需要从该表单创建每个函数?

我如何编写一个新的功能生态系统的简单代码,使用firebase cli进行部署,并为其提供这种独立的结构?

所有云功能在运行时始终在逻辑上彼此隔离。虽然它们可能在部署时共享一些公共代码,但它们不共享任何其他代码

Firebase CLI要求在单个入口点(即index.js)中定义所有函数。这就是它的工作原理。如果您不喜欢,您可以,但您将无法使用firebase函数模块来声明和实现您的函数。gcloud使用不同的约定

如果要继续使用Firebase CLI部署,可以将新功能添加到index.js中。可以使用
--only
参数将其与其他函数分开部署。例如,如果新函数名为“fn”:

这将只部署fn,而不部署索引中定义的任何其他函数。您可以在中阅读有关此选项和更多选项的信息


如果您确实不想将所有函数都放在一个index.js中,可以将定义拆分到多个文件中,然后
require
将其导入到main index.js中。使用nodejs和JavaScript提供的工具,如何组织源文件取决于您。

但使用仪表板时,我可以设置一些参数,而在通过cli部署时我无法设置这些参数。。。在仪表板上,每个功能都可以设置自己的节点版本、内存位置、时间限制。。。等等,等等,我如何在使用单个index.js和数千个exports的同时进行此类设置,您也可以使用Firebase CLI完成所有这些。只需查看文档即可。您可以在代码中指定函数定义中的所有内容。
firebase deploy --only functions:fn