当前位置: 首页 > Web前端 > JavaScript

vue2.0增加多环境打包配置2(vueinitwebpack创建的项目,有build和config目录)

时间:2023-03-27 17:09:46 JavaScript

webpack代理+多环境打包配置(开发、测试、预生产、生产)一:配置代理proxyconfig/index.jsmodule.exports={dev:{assetsSubDirectory:"static",assetsPublicPath:"/",proxyTable:{"/web":{//target:"http://192.168.2.666/",//接口域名,target:"http://192.168.2.777:81/",//接口域名,//target:"http://uat.baiddu.com/api/",//预产域名,//target:"https://api.baiddu.com/",//接口域名,changeOrigin:true,//是否跨域//logLevel:'debug',pathRewrite:{"^/web":"/web"//需要rewrite重写,}}},}}2:通过corss-env,修改相关配置和搭建不同环境代码1.安装npminstallcross-env-dev--save2。修改各个环境中的参数,在config目录下添加test.env.js、uat.env.js和修改dev.env.js、prod.env。js,修改内容如下(必须以VUE_APP_开头)//192.168.2.777:81/web"'}dev.env.js'使用严格'constmerge=require('webpack-merge')constprodEnv=require('./prod.env')module.exports=merge(prodEnv,{NODE_ENV:'"development"',env_config:'"dev"',VUE_APP_BASE_API:'"/web"'})uat.env.js'usestrict'module.exports={NODE_ENV:'"usertest"',env_config:'"uat"',VUE_APP_BASE_API:'"http://uat.baidu.com/web"'}prod.env.js'usestrict'module.exports={NODE_ENV:'"production"',env_config:'"prod"',VUE_APP_BASE_API:'"https://api.bitdu.com/web"'}3.修改package.json文件中的脚本内容。(NODE_ENV最好设置为生产环境,因为在build/utils.js中只进行生产环境)conf.js","start":"npmrundev","lint":"eslint--ext.js,.vuesrc","build-test":"cross-envNODE_ENV=productionenv_config=测试节点构建/build.js","build-uat":"cross-envNODE_ENV=productionenv_config=uatnodebuild/build.js","build-prod":"cross-envNODE_ENV=productionenv_config=prod节点构建/构建.js"},4.修改config/index.js文件中的构建参数,这里的参数会在build/webpackage.pro中Buildusedind.conf.js:{//index.html模板//添加测试产品环境配置testEnv:require('./test.env'),uatEnv:require('./uat.env'),prodEnv:require('./prod.env'),}5.修改build/webpackage.prod.conf.js文件,调整env常量的生成方式。//单独环境常量的定义//constenv=require('../config/prod.env')constenv=config.build[process.env.env_config+'Env']6.修改build/build.jsfile,删除process.env.NODE_ENV的赋值,修改spinner的定义,调整内容如下:'usestrict'require('./check-versions')()//注释掉代码//process.env.NODE_ENV='production'constora=require('ora')constrm=require('rimraf')constpath=require('path')constchalk=require('chalk')constwebpack=require('webpack')constconfig=require('../config')constwebpackConfig=require('./webpack.prod.conf')//修改spinner的定义//constspinner=ora('buildingforproduction...')varspinner=ora('为'+process.env.NODE_ENV+'of'+process.env.env_config+'mode...')spinner.start()7.在网络请求时,设置baseUrl//setbaseURLaxios.defaults.baseURL=process.env.VUE_APP_BASE_API8。执行打包npmrunbuild-test