vue cli4下環(huán)境變量和模式示例詳解
本文介紹了vue cli4下環(huán)境變量和模式示例詳解,分享給大家,具體如下:
環(huán)境變量
一個環(huán)境變量文件只包含環(huán)境變量的鍵值對:
NODE_ENV=development VUE_APP_BASE_URL=http://127.0.0.1:8080/
注意:
- NODE_ENV - 是 “development”、“production” 、"test"或者自定義的值。具體的值取決于應用運行的模式
- BASE_URL - 會和 vue.config.js 中的 publicPath 選項相符,即你的應用會部署到的基礎路徑
- 除了 NODE_ENV 和 BASE_URL,其他的環(huán)境變量必須以 VUE_APP_ 開頭
- 項目中使用:process.env.環(huán)境變量名,eg:VUE_APP_BASE_URL
模式
模式是 Vue CLI 項目中一個重要的概念。默認情況下,一個 Vue CLI 項目有三個模式:
- development 模式用于 vue-cli-service serve
- production 模式用于 vue-cli-service build 和 vue-cli-service test:e2e
- test 模式用于 vue-cli-service test:unit
注意點:
- 一個模式可以包含多個環(huán)境變量
- 每個模式都會將環(huán)境變量中 NODE_ENV 的值設置為模式的名稱
- 可以通過為 .env 文件增加后綴來設置某個模式下特有的環(huán)境變量
- 為一個特定模式準備的環(huán)境文件 (例如 .env.production) 將會比一般的環(huán)境文件 (例如 .env) 擁有更高的優(yōu)先級
- 此外,Vue CLI 啟動時已經(jīng)存在的環(huán)境變量擁有最高優(yōu)先級,并不會被 .env 文件覆寫
.env # 在所有的環(huán)境中被載入 .env.local # 在所有的環(huán)境中被載入,但會被 git 忽略 .env.[mode] # 只在指定的模式中被載入,優(yōu)先級高于.env和.env.local .env.[mode].local # 只在指定的模式中被載入,但會被 git 忽略,優(yōu)先級高于.env和.env.local
例子:不同模式下,為axios指定不同的baseUrl
創(chuàng)建development模式的環(huán)境變量文件,項目根目錄下新建.env.development文件
NODE_ENV=development VUE_APP_BASE_URL=http://127.0.0.1:8080/
創(chuàng)建production模式的環(huán)境變量文件,項目根目錄下新建.env.production文件
NODE_ENV=production VUE_APP_BASE_URL=/
在src目錄下main.js文件中使用環(huán)境變量
import Vue from 'vue' import App from './App.vue' // 導入axios import axios from 'axios' // 設置請求根路徑,使用環(huán)境變量 axios.defaults.baseURL = process.env.VUE_APP_BASE_URL // axios攔截器 axios.interceptors.request.use(config => { // 為請求頭對象,添加Token驗證的Authorization字段 config.headers.Authorization = window.sessionStorage.getItem('token') // 在最后必須return config return config }) // 掛載到vue Vue.prototype.$http = axios Vue.config.productionTip = false new Vue({ router, render: h => h(App) }).$mount('#app')
也可以在其他vue組件中打印
console.log(process.env.NODE_ENV) console.log(process.env.VUE_APP_BASE_URL) console.log(this.$http.defaults.baseURL)
運行項目
npm run serve
例子:自定義模式
自定義一個fat模式
在項目根目錄下新建環(huán)境變量文件.env.fat
NODE_ENV=fat VUE_APP_BASE_URL=http://fat.com/
根目錄下package.json中新增腳本命令
{ "name": "vue_shop", "version": "0.1.0", "private": true, "scripts": { "serve": "vue-cli-service serve", "build": "vue-cli-service build", // 這條命令是我自定義的,通過--mode指定模式為fat "fat": "vue-cli-service serve --mode fat", "lint": "vue-cli-service lint" }, "dependencies": { "axios": "^0.19.2", "core-js": "^3.4.4", "echarts": "^4.6.0", "element-ui": "^2.4.5", "vue": "^2.6.10", "vue-router": "^3.1.3" }, "devDependencies": { "@vue/cli-plugin-babel": "^4.1.0", "@vue/cli-plugin-eslint": "^4.1.0", "@vue/cli-plugin-router": "^4.1.0", "@vue/cli-service": "^4.1.0", "@vue/eslint-config-standard": "^4.0.0", "babel-eslint": "^10.0.3", "babel-plugin-component": "^1.1.1", "eslint": "^5.16.0", "eslint-plugin-vue": "^5.0.0", "less": "^3.10.3", "less-loader": "^5.0.0", "vue-cli-plugin-element": "^1.0.1", "vue-template-compiler": "^2.6.10" } }
運行命令
npm run fat
這時候項目中讀取的,就是fat模式下的環(huán)境變量了
到此這篇關于vue cli4下環(huán)境變量和模式示例詳解的文章就介紹到這了,更多相關vue cli4環(huán)境變量和模式內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
vue cli3.0結(jié)合echarts3.0與地圖的使用方法示例
這篇文章主要給大家介紹了關于vue cli3.0結(jié)合echarts3.0與地圖的使用方法,文中通過示例代碼介紹的非常詳細,對大家學習或者使用vue具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧2019-03-03vue 自定義提示框(Toast)組件的實現(xiàn)代碼
這篇文章主要介紹了vue 自定義提示框(Toast)組件的實現(xiàn)代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-08-08Vue項目中如何封裝axios(統(tǒng)一管理http請求)
這篇文章主要給大家介紹了關于Vue項目中如何封裝axios(統(tǒng)一管理http請求)的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-05-05