【问题标题】:I want to write a Firebase Function for a different project. How do I do that?我想为不同的项目编写一个 Firebase 函数。我怎么做?
【发布时间】:2018-11-24 03:01:23
【问题描述】:

我有 2 个不同的项目同时进行。我在第一个项目上工作,并为该项目提供了一个原生 index.js 文件。然后,我想为第二个项目编写 Cloud Functions 的代码。所以,当我输入“firebase init functions”时,它表示选择了一个默认项目(即使在输入“firebase use project-id”之后)。我该如何纠正这个问题?

PS:我完成了整个序列一次,index.js 文件被覆盖了。幸运的是,我为第一个项目提供了支持。

编辑 2:我更改了目录并创建了一个项目,但它再次覆盖了“functions”文件夹中的 index.js 文件。如何解决这个问题?我应该离开主目录本身吗?

【问题讨论】:

    标签: firebase google-cloud-functions firebase-cli


    【解决方案1】:

    我不是 100% 肯定理解这个问题,但这里有两种可能的情况:

    1/ 您正在一个特定的项目中工作,正在编写 Cloud Functions(即修改 index.js 文件),并且您想从事另一个完全不同的项目。只需创建一个新目录(在当前项目之外)并在那里初始化一个新项目,如文档 here: "https://firebase.google.com/docs/cli/#initializing_a_project_directory" 中所述

    2/ 您正在一个特定项目中工作,正在编写 Cloud Functions(即修改 index.js 文件),并且您希望将相同的代码部署到另一个 Firebase 项目。只需按照您提到的那样执行firebase use <alias_or_project_id>,然后执行firebase deploy(或firebase deploy --only functions)。当然,在这种情况下,当从一个项目切换到另一个项目时,您可能需要调整代码的其他部分,例如 JavaScript config 对象。

    如果此答案不能解决您的问题,请提供更多详细信息。

    【讨论】:

    • 如何覆盖刚才新建的Guduapp目录下的文件??不明白。
    • 不是。它在父目录中覆盖它。因此,即使我更改了路径,如果您知道我的意思,它也会在主目录中创建项目。
    【解决方案2】:

    Configure Multiple Projects

    Web 和 Admin SDK 是通过直接将值传递给 它们的初始化函数。对于这些 SDK,您可以使用运行时 检查以选择开发或生产配置变量。

    在您的开发机器/项目上,在一个唯一文件夹下构建每个应用程序。

    【讨论】:

    • 谢谢,但这不是我的问题!
    • 你不能从每个项目的唯一(子)文件夹中进行 firebase init 吗? ...就像在子文件夹中初始化 git 一样? ...这就是您需要做的事情,因为(每个项目)云功能需要一个 index.js。
    • 但问题是,如果 subholder 在主文件夹中,它会通过覆盖 index.js 来创建新项目。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-14
    • 2020-05-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多