vue cli2.x配置多环境打包


一、安装

npm install --save-dev cross-env

二、配置步骤

1、修改config下的文件

//test.env.js

'use strict'
module.exports = {
  NODE_ENV: '"testing"',
  ENV_CONFIG: '"test"',
  BASE_API:'"http://10.20.2.177:12120/api"'
}

 //prod.env.js

'use strict'
module.exports = {
  NODE_ENV: '"production"',
  ENV_CONFIG: '"prod"',
  BASE_API:'"http://10.20.2.177:12121/api"'
}

 //dev.env.js

'use strict'
const merge = require('webpack-merge')
const prodEnv = require('./prod.env')

module.exports = merge(prodEnv, {
  NODE_ENV: '"development"',
  ENV_CONFIG: '"dev"',
  BASE_API:'"http://10.20.2.177:12120/api"'
})

 //config/index.js文件修改, build中添加prodEnv, testEnv, devEnv

...
  build: {
    prodEnv: require('./prod.env'),
    testEnv: require('./test.env'),
    devEnv: require('./dev.env'),
    // Template for index.html
    index: path.resolve(__dirname, '../dist/index.html'),
...

 2、修改build/build.js文件,打包的时候可以显示环境

const spinner = ora('正在打包... ' + process.env.ENV_CONFIG + '环境')

 3、配置package.json文件,配置打包命令

 "build--dev": "cross-env NODE_ENV=dev ENV_CONFIG=dev node build/build.js",
 "build--test": "cross-env NODE_ENV=testing ENV_CONFIG=test node build/build.js",
 "build--prod": "cross-env NODE_ENV=production ENV_CONFIG=prod node build/build.js"

 4、运行命令就可以实现分环境打包了

npm run build--dev
npm run build--test
npm run build--prod

最后,项目中使用axio根据不同环境配置不同的请求接口地址,就可以实现打包不同环境,调用不同环境地址接口。

可打印process.env.NODE_ENV查看。

配置完成之后发现一个问题,就是以往的项目运行npm run dev会自动打开默认的浏览器,但这一次自己配置并没有。

解决方法:修改config/index.js

autoOpenBrowser: true,  //是否默认打开浏览器,默认是false,改为true即可


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM