一、在項目跟目錄下新增配置配置文件(如果存在則不需要新建):
1、文件 .env ,該文件配置的內容不論什么環境打包都會生效
* 公共配置信息,根據自己需求添加
2、文件 .env.dev ,開發環境配置文件,內容:
NODE_ENV=development
VUE_APP_URL=127.0.0.1:8081
3、文件 .env.prod ,生產環境配置文件,內容:
NODE_ENV=production
VUE_APP_URL=127.0.0.1:8082
二、package.json 文件曾加下面紅色文字內容:
{ "name": "vue-vant-ui", "version": "0.0.1", "private": true, "scripts": { "serve": "vue-cli-service serve", "build": "vue-cli-service build", "lint": "vue-cli-service lint", "build:dev": "vue-cli-service build --mode dev", "build:prod": "vue-cli-service build --mode prod" },
至此,不同環境打包配置文件已經生效,對應打包命令:
npm run build:dev
npm run build:prod
打包命令紅色部分對應 package.json 新增內容中的 key
三、其余地方如何使用配置文件中的配置,下面是vue.config.js中一些用到的地方,高亮顯示,其余地方用法一致:
console.log('==================系統初始化,vue.config.js 配置文件開始加載==================');
const path = require('path');
function resolve (dir) {
return path.join(__dirname, dir);
}
var targetUrl = 'http://localhost:8080';
if (process.env.VUE_APP_URL != undefined && process.env.VUE_APP_URL != '') {
targetUrl = process.env.VUE_APP_URL;
}
console.log('targetUrl:' + targetUrl);
module.exports = {
publicPath: process.env.NODE_ENV === "production" ? "./" : "./", // 部署應用時的根路徑(默認'/'),也可用相對路徑(存在使用限制)
outputDir: "dist", // 運行時生成的生產環境構建文件的目錄(默認''dist'',構建之前會被清除)
assetsDir: "static", //放置生成的靜態資源(s、css、img、fonts)的(相對於 outputDir 的)目錄(默認'')
lintOnSave: true, // 是否開啟eslint保存檢測
productionSourceMap: false, // 是否在構建生產包時生成sourcdeMap
chainWebpack: (config) => {
config.resolve.alias // 為指定目錄設置全局別名
.set('@', resolve('src'))
.set('@public', resolve('public'))
},
devServer: {
/* 本地ip地址 */
host: "localhost",
port: "80",
hot: true,
/* 自動打開瀏覽器 */
open: false,
overlay: {
warning: false,
error: true
}, // 錯誤、警告在頁面彈出
/* 跨域代理 */
proxy: {
"/api": {
/* 目標代理服務器地址 */
target: targetUrl , //
/* 允許跨域 */
changeOrigin: true,
ws: true,
pathRewrite: {
"^/api": ""
}
} //,
// '/foo': {
// target: '<other_url>'
// }
}
// pluginOptions: {// 第三方插件配置
//
// }
}
};
console.log('==================系統初始化,vue.config.js 配置文件加載結束==================');
