一、全局文件命名特點
.env 在所有的環(huán)境中被載入
.env.local 在所有的環(huán)境中被載入芜茵,但會被 git 忽略
.env.[mode] 只在指定的模式中被載入
.env.[mode].local 只在指定的模式中被載入叙量,但會被 git 忽略
二、環(huán)境變量定義規(guī)范
1. 其中以.local結(jié)尾的文件會被忽略九串,
2. [mode]可以是:development(開發(fā))绞佩、production(生產(chǎn))、test(測試)猪钮,他們分別代表不同的環(huán)境模式
3. NODE_ENV品山,BASE_URL 是默認的環(huán)境變量可訪問無法被修改,NODE_ENV代表當前的環(huán)境模式烤低,BASE_URL代表的是當前根路徑
4. 自定義環(huán)境變量規(guī)則:必須以 VUE_APP_ 開頭 否則無效
5. 訪問方式:在開發(fā)中通過 process.env.變量名稱 的方式獲取變量值
6. 修改完需要重啟服務(wù)才生效
7. 不可用來存儲非公開信息肘交,因為webpack編譯后會被暴露
三、定義環(huán)境變量文件
1. 開發(fā)環(huán)境 .env.development
# 開發(fā)環(huán)境扑馁,運行 調(diào)用的環(huán)境變量
# 當前文件配置的環(huán)境變量涯呻,會在運行 npm run dev 時調(diào)用
# 除非你明確知道此文件修改的含義凉驻,否則請勿修改
# baseURL
VUE_APP_BASEURL = 'http://localhost:9000/development'
2. 生產(chǎn)環(huán)境 .env.production
# 生產(chǎn)環(huán)境,打包調(diào)用的環(huán)境變量
# 當前文件配置的環(huán)境變量复罐,會在運行 npm run build 時調(diào)用
# 除非你明確知道此文件修改的含義涝登,否則請勿修改
# baseURL
VUE_APP_BASEURL = 'http://localhost:9000/production'
3. 測試環(huán)境 .env.test
# 測試環(huán)境調(diào)用的環(huán)境變量
# 當前文件配置的環(huán)境變量,會在運行 npm run test 時調(diào)用
# 除非你明確知道此文件修改的含義效诅,否則請勿修改
# baseURL
VUE_APP_BASEURL = 'http://localhost:9000/test'
4. 所有環(huán)境環(huán)境 .env
# 所有調(diào)用的環(huán)境變量
# 除非你明確知道此文件修改的含義胀滚,否則請勿修改
# AAA
VUE_APP_AAA = 'AAA'
5. 所有環(huán)境環(huán)境 (被 git 忽略).env.local
# 所有調(diào)用的環(huán)境變量,不會提交 git
# 除非你明確知道此文件修改的含義乱投,否則請勿修改
# BBB
VUE_APP_BBB = 'BBB'
四咽笼、在組件中使用
<template>
<div class="home">
<h1>八、vue 環(huán)境變量</h1>
<div>NODE_ENV:{{ NODE_ENV }}</div>
<div>VUE_APP_AAA:{{ VUE_APP_AAA }}</div>
<div>VUE_APP_BASEURL:{{ VUE_APP_BASEURL }}</div>
<div>VUE_APP_BBB:{{ VUE_APP_BBB }}</div>
<div>BASE_URL:{{ BASE_URL }}</div>
</div>
</template>
<script>
const { NODE_ENV, VUE_APP_AAA, VUE_APP_BASEURL, VUE_APP_BBB, BASE_URL } = process.env;
export default {
name: "ChildView",
data() {
return {
NODE_ENV,
VUE_APP_AAA,
VUE_APP_BASEURL,
VUE_APP_BBB,
BASE_URL,
};
},
mounted() {
console.log(process.env);
// 結(jié)果:
// {
// NODE_ENV: "development",
// VUE_APP_AAA: "AAA",
// VUE_APP_BASEURL: "http://localhost:9000/development",
// VUE_APP_BBB: "BBB",
// BASE_URL: "/",
// }
},
};
</script>
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者