我正在構建一個角度應用程式。這個角度應用程式將交付給具有不同需求和基礎設施的多個客戶。它需要幾個值(例如后端服務器、標題等),客戶在安裝時應該可以配置這些值。
在除錯中,我完全可以想象這些值來自environnments/environments.ts檔案,但是一旦構建,environment.prod.ts就無法再更改,因此可能無法構建。
如何向 Angular 應用程式提供值(我猜是通過某些檔案或環境變數)(以及如何讀取它們)?
目前還沒有決定,但很可能構建的檔案將被包裝在一個 nginx docker 映像中。
uj5u.com熱心網友回復:
考慮到您想先構建您的應用程式,然后選擇一個特定的環境來部署它,本教程可能對您有用。總之,您只需執行 4 個步驟:
- 在 src 檔案夾中添加 JSON 組態檔
- 更新我們的 angular/webpack 配置以將檔案包含在我們的 dist 檔案夾中
- 添加一個簡單的配置服務,通過呼叫從我們的組態檔中獲取我們的配置資料
- 使用 APP_INITIALIZER 在引導程序中呼叫檢索我們的配置資料的方法
如果您遵循這 4 個步驟,您的配置將是您dist檔案夾中的 JSON(或您的 angular.json 檔案中的任何其他 outputPath)。
至于 docker 部分,您可以直接在 nginx 容器中添加組態檔。雖然我猜你更喜歡創建一個 docker 卷。因此,您不必擔心為每個客戶端復制正確的組態檔,而只需將其特定的組態檔保存在他們的服務器中。
uj5u.com熱心網友回復:
有兩種型別的配置:
- 編譯時配置
- 運行時配置
也許,以下文章可以幫助您找到最適合您的專案:https ://juristr.com/blog/2018/01/ng-app-runtime-config/
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/431604.html
