未捕获的类型错误:n.auth 不是函数(Angular Firebase 应用程序)

问题描述 投票:0回答:1

我的 Angular 应用程序在本地运行没有错误,但是当我构建它并使用时:

firebase init hosting
firebase deploy

它已部署,但仅加载索引,没有任何我的组件并抛出此错误:

enter image description here

我在网上搜索了很多,但可用的解决方案并不多,而且没有任何效果。我尝试添加:

"aot": true

在 angular.json 的配置对象中,因为它被指出是一个解决方案,但它没有帮助。

这是我的 app.module.ts 的一部分:

enter image description here 我尝试删除节点模块并重新安装它们以及 packet-lock.json,但没有任何效果。

这些是我的依赖:

enter image description here

我想知道 @angular/fire(即 ^7.6.1)是否会导致此问题,但是当我尝试安装最新版本时,存在依赖项对等问题,但我无法安装。我尝试过

npm config set legacy-peer-deps true

但是混淆了一些错误和警告,我会尝试做同样的事情,但这个错误不断重复出现。请帮忙,我不是专家,只是一个专业的爱好爱好者。

附注 我的页面上的导航是可见的,当我单击其中一个链接时,页面上没有任何变化,但控制台抛出一个新错误: enter image description here

不知何故,我的应用程序与 Firebase 发生冲突,即使我将 dist 文件夹内容上传到另一个托管提供商,并且不使用 Firebase 托管它,它仍然显示相同的错误。

我尝试注释掉组件中的数据库连接,并且 html 和 css 工作得很好。但是当我尝试连接到数据库时,我收到这些错误。

angular typescript firebase angularfire
1个回答
0
投票

幸运的是,这个错误在我的第二个项目中没有发生。 Firebase 正确连接且功能齐全,这很好,因为我的第二个项目比这个大得多。 我相信我的错误是由某种已安装的软件包引起的,但尽管我尝试删除 npm、更新它、重新安装我正在使用的所有软件包、更改依赖项 - 我只是无法修复错误。所以我尝试了我的第二个项目并且成功了。我相信我在第一个项目的代码中的某个地方犯了某种错误,我很高兴知道其他人是否遇到过这样的错误以及他是如何修复它的。 无论如何,我的解决方案是将数据库更改为免费的外部 MySql 数据库,创建 NodeJs 服务器,将其上传到廉价的 Droplet,一切都很好。一切顺利,工作顺利。 遗憾的是,我弄乱了服务器上的 etc/config 文件,所以现在我只能从一台 PC 启动它,而且我也想从我的笔记本电脑启动它,所以我需要尽快配置它尽可能。

© www.soinside.com 2019 - 2024. All rights reserved.