代码之家  ›  专栏  ›  技术社区  ›  Michel

在一个独特的Firebase项目下处理多个web应用程序

  •  0
  • Michel  · 技术社区  · 3 年前

    我有一个Firebase项目持有一些托管网站(网络应用程序)。

    它按我的意愿工作,但我想清理我在网站之间切换的方式。

    为此,我可以在网上找到一些信息;但有一件事我需要知道,但没有发现太多:

    我有两个网站 https://appone.web.app/ https://apptwo.web.app/; 它们共享99%的代码,但是:

    第一次,我在一个名为tools.js的源文件中使用了以下代码:

    ....
    let appVar = "the-app-for-Peter"
    let localAppNbr = 194
    let appName = 'appone'
    ....
    

    对于第二个,代码必须是:

    ....
    let appVar = "the-app-for-Susy"
    let localAppNbr = 749
    let appName = 'apptwo'
    ....
    

    我还有一个名为appFunctions.js的文件,其中包含三个函数的实现:

    appFnOne()、appFnTwo()和appFnThree()。

    由于这两个站点的功能实现不同,我需要两个文件: 的appFunctions.js https://appone.web.app/ 和的app2ndFunctions.js https://apptwo.web.app/

    正如人们所看到的,差异是有限的,我可以亲自处理。 然而,这显然不是一个好的解决方案。

    遵循良好做法,我该如何处理这种情况? 由于大多数代码都是相同的,我只想保留一个本地项目。

    在tools.js的情况下,我是否可以在考虑应用程序名称的情况下编写代码(仅一次)?

    在最后一种情况下,我是否可以进行一些配置来告诉firebase使用哪个文件(以获得正确的实现)appFunctions.js或app2ndFunctions.js?

    0 回复  |  直到 3 年前
        1
  •  1
  •   Doug Stevenson    3 年前

    Firebase主机不提供任何类型的每站点配置,你可以自定义。Firebase没有提供“最佳实践”。您可以根据自己的需要管理自己的配置。这里的任何“最佳实践”都是一个意见问题,可能是由你用来构建网站的任何JS框架或构建工具建议的。

    唯一可以被视为每个站点配置的是 reserved URL 提供Firebase项目信息。

      <script src="/__/firebase/8.10.1/firebase-app.js"></script>
    

    但这可能无法加载您想要的所有信息。也许你可以 examine the URL that's been loaded into the browser 使用 window.location ,并使用该字符串在运行时选择所需的任何站点配置。

    推荐文章