Angular中environments的神奇之處

前言

在使用angular腳手架構(gòu)建angular項目時,都會給我們生成一個名叫environments的文件夾。從字面意識理解像是環(huán)境變量的意思。

可以看見后綴不一樣

有卵用

他們分別是每個環(huán)境對應(yīng)的配置,執(zhí)行不同的命令,就會調(diào)用不同的文件。

例如:
比如environment.prod.ts對應(yīng)的就是prod環(huán)境,你有多少個環(huán)境這里就新建多少個文件。(當(dāng)然沒有的就是默認的運行環(huán)境)

只有這些文件并起不了作用。關(guān)鍵在這里

到angular-cli.json文件找到environments這個屬性進行配置,比如

這才是起作用的地方

使用

奇怪它怎么知道是哪個文件呢?

本地調(diào)試的時候

ng s -e=prod

簡單解釋下,
ng:angular腳手架提供的命令操作
s: serve 的簡寫,運行程序
-e=prod: -env=prod的簡寫,大概意思就是啟用prod的運行環(huán)境配置,prod就是在上面json文件中配置的環(huán)境名。

發(fā)布的時候,當(dāng)然用法也是一樣,不過通常我們都是把ng命令封裝在package.json文件中。如下:

簡化了

我們使用 npm run start就等于使用了ng serve --port 4001 --open這個命令。

場景

在angular項目開發(fā)中,前后臺分離,后臺api地址生產(chǎn)環(huán)境,測試環(huán)境,開發(fā)環(huán)境的api地址可定都不會是同一個ip地址。這樣通過environments來控制的話,就不擔(dān)心在測試,生產(chǎn),開發(fā)環(huán)境來回切換時去改配置文件了。

演示一下

默認環(huán)境


默認環(huán)境
  ng s 

打開瀏覽器查看

和配置的一樣

其他環(huán)境


其他環(huán)境
ng s -e=dprod --hmr 
見證奇跡
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容