【问题标题】:Blank page deploying angular 8 app in firebase在 Firebase 中部署 Angular 8 应用程序的空白页面
【发布时间】:2020-08-17 17:05:54
【问题描述】:

我不明白为什么,我的 Angular Web 应用程序在本地运行良好,但是当我将它部署到 Firebase 托管时,它只显示一个空白页面。 在控制台中应用程序的根文件夹中,我写道:

ng build --prod

它创建了一个名为“dist”的地毯,并在 dist 内创建了另一个名为 myproject 的地毯,其中包含所有文件

现在,我在终端中执行

firebase init

然后,我选择 Hosting 和 Database,然后选择我在 firebase 中的项目,然后它会询问我我想使用哪个数据库规则文件 我让 default 然后 我想用作公共目录的内容 然后我写 dist/myproject bc 文件在 myproject 文件夹里面就像我之前所说的那样。

然后,因为它是一个有角度的应用程序,当它问我 你想配置为单页应用程序时,我说 是(我试过没有,它也不行)。

最后,当它询问 你是否要覆盖 index.html 我说 no 然后它就结束了。

firebase.json 看起来像这样:

{
"hosting": {
    "public": "dist/myproject",
    "ignore": [
      "firebase.json",
      "**/.*",
      "**/node_modules/**"
    ],
    "rewrites": [
      {
        "source": "**",
        "destination": "/index.html"
      }
    ]
  }
}

我终于做到了

firebase deploy

正如我所说,它“成功”地部署了我的应用程序,但是当我进入时它只是一个白页。我不知道它可能是什么,有人可以帮助我吗?

干杯!

【问题讨论】:

    标签: angular firebase


    【解决方案1】:

    我在 Firebase Hosting 上托管了一些 Angular SPA,您只需执行所谓的“提前”编译即可使其正常工作。但首先检查:

    1. 您的浏览器控制台中是否有任何错误消息?
    2. 当您查看页面源时,它是空白的还是您的应用的 index.html 在那里?

    如果您回答“否”和“是”,请尝试使用 AOT 进行编译并重新部署: ng build --prod --aot

    【讨论】:

    • 你说得对,当我使用 tha --aot 标志编译它时,它会显示一个奇怪的错误,这就是它不起作用的原因!但我仍然不明白这个错误,它说:node_modules/@angular/fire/angularfire2.d.ts:50:96 - error TS2344: Type 'T[K]' does not meet the constraint '(.. .args: any) => any'.
    • 我解决了它添加 "skipLibCheck": true 在 tsconfig.json 和它编译但网络仍然是空白,它显示此错误:TypeError: sg (...).auth 不是函数
    • 这是一个不同的问题,请将此标记为已解决,因为它解决了第一个问题。对于第二个错误,您需要发布代码,因为您很可能缺少提供程序或声明文件。
    猜你喜欢
    • 2020-07-19
    • 2021-01-25
    • 1970-01-01
    • 1970-01-01
    • 2020-02-15
    • 2021-07-23
    • 2019-02-10
    • 2021-12-22
    • 1970-01-01
    相关资源
    最近更新 更多