npm run build根据不同参数打包不同环境url

摘要:这篇文章主要介绍了vue项目中Npm run build 根据环境传递参数方法来打包不同域名,使用npm run build --xxx,根据传递参数xxx来判定不同的环境,给出不同的域名配置,具体内容详情大家参考下:config文件夹下dev.env.js中修改代码、prod.env.js中修改代码 HOST为截取到的参数

这篇文章主要介绍了vue项目中Npm run build 根据环境传递参数方法来打包不同域名,使用npm run build --xxx,根据传递参数xxx来判定不同的环境,给出不同的域名配置,具体内容详情大家参考下:


config文件夹下dev.env.js中修改代码

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

module.exports = merge(prodEnv, {
  NODE_ENV: '"development"',
  HOST: '"dev"'
})


prod.env.js中修改代码   HOST为截取到的参数

'use strict'
let HOST = process.argv.splice(2)[0] || 'prod';
module.exports = {
  NODE_ENV: '"production"',
  HOST: '"'+HOST+'"'
}


在封装axios请求的文件中

/**
 * 环境切换
 */
let apiUrl = ''
let HOST = process.env.HOST;
if(HOST === 'prod'){
    apiUrl = 'http://10.1.28.221:12001'
}
if(HOST === 'test'){
    apiUrl = 'http://10.88.10.31:12002'
}
axios.defaults.baseURL = apiUrl;


这样只需在打包的时候带上参数就可以自动切换不同的url

生产环境:npm run build -- prod
测试环境:npm run build --test


本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!

链接: https://shenqiku.cn/article/FLY_1524