在vue日常开发中,本地环境和线上环境的请求接口不同,如果频繁切换,显得不是那么优雅哈,所以,通过webpack的配置,实现不同环境请求不同地址.以下有三种方式,一种是写死地址,打包之后不可修改,另一种是,可根据打包生成的json文件,自由修改地址,第三种是获取当前地址,拼接请求接口.
20190226补充vue-cli3的配置方法,见文章末尾
- 方法一
在config文件夹下的dev.env.js文件中这样写:
'use strict'
const merge = require('webpack-merge')
const prodEnv = require('./prod.env')
module.exports = merge(prodEnv, {
NODE_ENV: '"development"',
API_ROOT: '"http://192.168.x.xxx:8080/idbcenter/"'
})
在config文件夹下的prod.env.js文件中这样写:
'use strict'
module.exports = {
NODE_ENV: '"production"',
API_ROOT: '"http://192.168.x.xxx:8080/idbcenter/"'
}
接下来,在api.js中就根据运行环境做判断
if (process.env.NODE_ENV === 'development') {
axios.defaults.baseURL = process.env.API_ROOT
} else if (process.env.NODE_ENV === 'produc