1.首先安装 cross-env
npm install cross-env --save-dev
在package.json里面配置 根据不同命令打包
"scripts": {"dev": "cross-env NODE_ENV=development webpack-dev-server --config webpack.config.dev.js","dev:test": "cross-env NODE_ENV=test webpack-dev-server --config webpack.config.dev.js","dev:prod": "cross-env NODE_ENV=production webpack-dev-server --config webpack.config.dev.js","build:dev": "cross-env NODE_ENV=development webpack --config webpack.config.dev.js","build:test": "cross-env NODE_ENV=test webpack --config webpack.config.dev.js","build:prod": "cross-env NODE_ENV=production webpack --config webpack.config.prod.js","build": "cross-env NODE_ENV=production webpack --config webpack.config.prod.js","test": "echo \"Error: no test specified\" && exit 1"},
2.在webpack.common.js配置
const webpack = require('webpack');plugins: [new webpack.DefinePlugin({'process.env.API_BASE_URL': (() => {switch (process.env.NODE_ENV) {case 'production':return JSON.stringify('https://****************************');case 'test':return JSON.stringify('https://****************************');default:return JSON.stringify('http://****************************');}})()}),new HtmlWebpackPlugin({ template: 'app.html', // 指定模板html文件filename: 'index.html' // 输出的html文件名称}),new VueLoaderPlugin()],
3.在封装的axios配置同意前缀变量
axios.defaults.baseURL = process.env.API_BASE_URL