2017-10-17 23 views
0

我有一個角度4應用程序,它是在Nanobox中設置的。如何使角4生活重新加載指向正確的地址?

在本地機器上,它在Nanobox上的localhost:4200上運行,我按照Nanobox的建議在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,但我找不到任何有關它的信息。

+0

實時重新加載是一項開發時間功能,它不是您在生產中用來更新您的應用程序的東西 –

+0

我沒有在Production中使用它。 Nanobox是我的開發環境。 –

+0

那麼爲什麼? localhost會更快。 –

回答

0

作爲每理解您想客戶機上運行的應用的角度,以這樣做按照3個簡單步驟

1)使刺模式 -

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

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

2)構建在刺模式 - 基礎應用將設置在index.html中導航所有CSS和js文件 ng build prod --base =「/ folderName /」

3)部署dist文件夾並瀏覽。

+0

我不需要產品模式,因爲它是一個開發服務器。 Nanobox就像Docker。我需要以某種方式告訴我的實時重載與'http://0.0.0.0:4200'通信 –

0

經過大量的挖掘,沒有直接的答案。

這裏是我的解決方案與Nanobox:

搶Nanobox暗示的IP地址:

enter image description here

然後使用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" 
    } 
    } 

這應該這樣做。

相關問題