Stay before every beautiful thoughts.
Just be nice, always think twice!
webpack 给生产环境和发布环境配置不同的接口地址
- 第一步,分别设置不同的接口地址。找到下面的文件:
/config/dev.env.js
/config/prod.env.js
其实,这两个文件就是针对生产环境和发布环境设置不同参数的文件。我们打开 dev.env.js 文件。代码如下:
var merge = require('webpack-merge')
var prodEnv = require('./prod.env')
module.exports = merge(prodEnv, {
NODE_ENV: '"development"'
})
好,我们在 NODE_ENV 下面增加一项,代码如下:
var merge = require('webpack-merge')
var prodEnv = require('./prod.env')
module.exports = merge(prodEnv, {
NODE_ENV: '"development"',
API_ROOT: '"http://192.168.x.x/api"'
})
然后,我们编辑prod.env.js文件,
module.exports = {
NODE_ENV: '"production"',
API_ROOT: '"http://www.xxx.com/api"'
}
好。我们分别设定的路径已经有了,下面就是如何调用的问题了。
- 第二部,在代码中调用设置好的参数 以我们之前的演示代码为例。你自己的项目请根据你自己的情况调整。以下文件和代码仅供参考。
我们打开src/config/api.js文件,将原来开头的代码
// 配置API接口地址
const root = 'http://www.xxx.com/api/v1'
修改为
// 配置API接口地址
const root = process.env.API_ROOT
然后就完成了我们的配置工作。最后,重启项目,就能使新配置的接口地址生效了。
- 在经过这样的配置之后,我们在运行
npm run dev 的时候,跑的就是测试接口。
npm run build 打包项目的时候,打包的是服务器正式接口,我们就不用调来调去得了。