ERR_CONNECTION_REFUSED在 Angular 站点部署到 Firebase Hosting (loca



我正在尝试从 angular-templates.io 评估管理模板,并且生产构建工作正常。我上传到Firebase Hosting指定dist/浏览器(在生产构建期间创建),但是当我在浏览器中加载Firebase应用程序时,它只显示"正在加载..."。它给出的错误是:

main.43059628ad5e08be77bb.js:1 错误:未捕获(在承诺中):[对象未定义] at R (polyfills.45eead93d001664270af.js:1) at R (polyfills.45eead93d001664270af.js:1) 在 polyfills.45eead93d001664270af.js:1 at t.invokeTask (polyfills.45eead93d001664270af.js:1) at Object.onInvokeTask (main.43059628ad5e08be77bb.js:1) at t.invokeTask (polyfills.45eead93d001664270af.js:1) at e.runTask (polyfills.45eead93d001664270af.js:1) 在 D (polyfills.45eead93d001664270af.js:1) at e.invokeTask [as invoke] (polyfills.45eead93d001664270af.js:1) at _ (polyfills.45eead93d001664270af.js:1)

VP @ main.43059628ad5e08be77bb.js:1 本地主机:8000/资产/数据/ng2_charts.json:1 加载资源失败:net::ERR_CONNECTION_REFUSED

main.43059628ad5e08be77bb.js:1 错误:未捕获(承诺中):[对象未定义] at R (polyfills.45eead93d001664270af.js:1) at R (polyfills.45eead93d001664270af.js:1) 在 polyfills.45eead93d001664270af.js:1 at t.invokeTask (polyfills.45eead93d001664270af.js:1) at Object.onInvokeTask (main.43059628ad5e08be77bb.js:1) at t.invokeTask (polyfills.45eead93d001664270af.js:1) at e.runTask (polyfills.45eead93d001664270af.js:1) 在 D (polyfills.45eead93d001664270af.js:1) at e.invokeTask [as invoke] (polyfills.45eead93d001664270af.js:1) at _ (polyfills.45eead93d001664270af.js:1) VP @ main.43059628ad5e08be77bb.js:1

本地主机:8000/资产/数据/extended_table.json:1 加载资源失败:净::ERR_CONNECTION_REFUSED

它似乎在说它找不到两个文件:ng2_charts.json和extended_table.json在localhost:8000/assets/data。这两个文件确实存在于dist/browser/assets/data下,但为什么要搜索本地主机

我在文档中没有看到任何关于在部署之前需要更改配置的内容,我仔细阅读了 angular-templates.io

从字面上看,这是我执行的每个步骤:

npm i -g @angular/cli 

从下载的 zip 复制源文件(在选中"属性"中取消阻止后)

npm i
npm audit fix
npm run build:ssr && npm run serve:ssr

创建dist/浏览器文件夹并运行良好

npm i @angular/fire firebase --save
npm i angularfire2
npm install -g firebase-tools
firebase init
firebase deploy

在浏览器中打开 Firebase 应用

似乎我错过了一个配置步骤,但我没有在任何地方的文档中看到它。任何帮助将不胜感激!

我检查了SO以尝试找到答案,但这些是我找到的最接近的:

我的反应项目在部署到火力基地托管后不起作用

Angular 6.0 火力基地托管部署不起作用

Angular 在部署时不显示消防存储数据

想通了!必须更新两个文件(server.tssrc\environment\environment.prod.ts

server.tsfrom

app.listen(PORT, () => {
console.log(`Node Express server listening on http://localhost:${PORT}`);
});

app.listen(PORT, () => {
console.log(`Node Express server listening on https://<myfirebaseproject>.firebaseapp.com:${PORT}`);
});

src\environment\environment.prod.ts

exports.environment = {
production: true,
BASE_URL: 'http://mylocalhost:8008'
};

exports.environment = {
production: true,
BASE_URL: 'https://<myfirebaseproject>.firebaseapp.com'
};

如果这被记录在案,有人可以评论供我参考吗?如果 angular-templates.io 提到它会很有帮助。

最新更新