0

我有一个在 Nanobox 中设置的 Angular 4 应用程序。

在它在 Nanobox 上运行的本地机器上,我按照 Nanobox 的建议localhost:4200运行它。http://172.21.0.5:4200/

当应用程序加载时,http://172.21.0.5:4200/我收到此错误: zone.js:2933 GET http://localhost:4200/sockjs-node/info?t=1508200471270 net::ERR_CONNECTION_REFUSED

本地主机中不会发生此错误,并且由于该错误,我的实时重新加载无法正常工作。

提前致谢。

编辑

它是开发环境。我需要以某种方式告诉角度文件观察者与http://0.0.0.0:4200http://172.21.0.5:4200

我不知道角度实时重新加载脚本在哪里。我在网上也找不到任何东西。我以为是Webpack,但我找不到任何关于它的东西。

4

2 回答 2

0

据了解,您想在客户端机器上运行 Angular 应用程序,请遵循 3 个简单步骤

1)启用产品模式-

import { enableProdMode } from '@angular/core';

// Enable production mode unless running locally
if (!/localhost/.test(document.location.host)) {
  enableProdMode();
}

2) 在 prod 模式下构建应用程序-base 将在 index.html 中设置以导航所有 CSS 和 js 文件 ng build prod --base="/folderName/"

3)部署 dist 文件夹并探索。

于 2017-10-17T03:34:35.250 回答
0

经过大量挖掘,对此没有直接的答案。

这是我使用 Nanobox 的解决方案:

获取 Nanobox 建议的 IP 地址:

在此处输入图像描述

然后使用ng serve -host 172.21.0.5这个应该绕过livereload的问题。

同样在你boxfile.yml确保你使用fs_watch: true.

Nanobox 正在查看,0.0.0.0因此您需要确保在 angular-cli.json默认部分中添加:

"defaults": {
    "styleExt": "scss",
    "component": {},
    "serve": {
      "port": 4200,
      "host": "0.0.0.0"
    }
  }

这应该这样做。

于 2017-10-17T22:28:10.790 回答