当前位置: 首页 > Web前端 > vue.js

vue-cli3多环境打包配置

时间:2023-04-01 00:36:53 vue.js

要求一个项目有开发环境、测试环境、线上环境等多个环境。因为不同的环境需要的环境变量不同,比如http请求的域名或者路径不同,所以需要对不同的环境进行打包配置。实现模式思维VueCLI默认有三种模式:开发、测试、生产,在运行vue-cli-service命令时,通过--mode指定模式即可执行。例如:启动开发环境服务命令(默认为开发环境,不需要指定mode):vue-cli-serviceserve启动测试环境服务命令:vue-cli-serviceserve--modetest测试环境打包命令:vue-cli-servicebuild--modetest正式环境打包命令(production,无需指定mode):vue-cli-servicebuild环境变量在项目根目录下创建一个文件.env.[mode](mode为模式名)可以为环境定义相应的Environment变量。例如:.env.development(开发环境配置).env.test(测试环境配置).env.production(生产环境配置)文件内容只包含“key=value”对环境变量,如:NODE_ENV='production'VUE_APP_BASE_API='http://xxx'NODE_ENV为模式名;以VUE_APP_为前缀的变量可以通过process.env.VUE_APP_XXX访问应用:http请求路径不同环境下的包配置新建3个环境变量文件,分别是.env.development,.env.test,.env.production.env.development(/api为代理路径)NODE_ENV='development'VUE_APP_BASE_API='/api'.env.testNODE_ENV='test'VUE_APP_BASE_API='http://www.test.com'.env.productionNODE_ENV='production'VUE_APP_BASE_API='http://www.pro.com'为http请求创建一个axios对象request.jsconstrequest=axios.create({baseURL:process.env.VUE_APP_BASE_API,timeout:60*1000,method:'get'})package.json配置打包命令。默认有生产环境和开发环境命令,现在添加测试环境命令build-test"scripts":{"serve":"vue-cli-serviceserve","build":"vue-cli-servicebuild","build-test":"vue-cli-servicebuild--modetest"}执行打包命令测试环境:npmrunbuild-test线上环境:npmrunbuild