火力基地。身份验证和托管

时间:2020-09-22 04:24:28

标签: angular firebase firebase-authentication firebase-hosting

我正在创建一个网页。我正在使用Firebase和Angular。过去我通过以下方式安装SDK来进行身份验证:

npm install --save firebase

然后我使用 require import ,并在 firebase.js 中配置代码:

import firebase from "firebase/app";
import "firebase/auth";
import "firebase/firestore";

var firebaseConfig = {
  apiKey: ...
  authDomain: ...
  projectId: ...
  ...
};

firebase.initializeApp(firebaseConfig);
export const auth = firebase.auth();
export const firestore = firebase.firestore();
export const keep_session = firebase.auth.Auth.Persistence.SESSION;

但是现在我同时使用托管。 here告诉您使用以下方法:

<script src="/__/firebase/7.21.0/firebase-analytics.js"></script>
<script src="/__/firebase/7.21.0/firebase-auth.js"></script>
<script src="/__/firebase/7.21.0/firebase-firestore.js"></script>

将其置于 body 块中,看起来与以前相同。 问题是当我在端口4200上使用 ng服务时,我在控制台中看到它无法识别脚本。 是的, firebase服务是,但是它不显示我的网络。仅一个示例网页。使用我的Firebase库是,但没有我的内容。

所以我的疑问是如何做到这一点。 真的可以使用此脚本在我的应用中安装SDK吗?当我编写代码时,它无法识别。 我应该使用其他方式安装依赖项吗?

我也会在写的时候知道

firebase服务

具有5000端口的结果与在4200中使用时的结果相同

ng服务

在我的项目中,仅关于firebase,我有 firebase.json .firebaserc 文件。 package.json 中没有任何内容。

感谢帮助。


编辑: 进行 ng构建,然后修改 firebase.json

"hosting": {
    ...
    "public": "dist/app_name",
    ...
}

我终于看到了我的网站

firebase服务

所以现在的问题是,如果我的package.json中没有模块,我该如何开发?我进行导入时,IDE无法识别

1 个答案:

答案 0 :(得分:1)

那些特定的脚本包括您正在使用带有两个下划线的脚本,仅当网站由Firebase Hosting或其本地仿真器(firebase serve)托管时才起作用。它们将无法正常工作(包括ng serve)。

如果您使用捆绑程序(Angular这样做),则根本不会使用这些脚本。构建应用程序时,相关代码将来自您运行npm install时安装的模块。