vue全家桶进阶之路50:Vue3 环境变量+跨域设置实例

发布时间 2023-04-21 16:24:18作者: 城南城南

使用.env加后缀的方式来建立某个模式下的环境变量,

例如:项目根目录新建两个环境变量文件(development开发环境和production生产环境):

.env.development

.env.production

 在新建的两个环境变量文件中设置相同的环境变量名:

VUE_APP_BASE_API

环境变量名称必须以"VUE_API_"+名称的格式,否则不生效,这个格式是死的。至于后面部分就是自定义部分。

.env.development文件命令:

#接口服务地址
VUE_APP_SERVICE_URL='http://localhost:8001/'
#开发环境路径前缀
VUE_APP_BASE_API='/dev-apis'

.env.production文件命令:

#生成环境路径前缀
VUE_APP_BASE_API='/prod-apis'

vue.config.js文件命令调用环境变量:

环境变量的获取使用"process.env."+环境变量名称的方式,例如:

process.env.VUE_APP_BASE_API

一下是完整设置

module.exports={
    devServer:{
        port:8888,//前端端口
        open:true,//运行后浏览器自动弹出
        https:false,//不采用https加密方式
        host:"localhost",//前端主机,也可以是127.0.0.1,如果能被外界访问可以设置为0.0.0.0
        proxy:{
            [process.env.VUE_APP_BASE_API]:{//环境变量
                target:process.env.VUE_APP_SERVICE_URL,//后端服务器,即:API服务器
                changeOrigin:true,//是否允许跨域
                pathRewrite:{//请求路径重写
                    ['^'+process.env.VUE_APP_BASE_API]:''//匹配开头为环境变量值的字符串,后面设置空字符串。
                }
            }
        }
    },
    lintOnSave:false, //关闭格式检查
    productionSourceMap:false //在生产环境中不生成source map文件,可以减少编译后代码的体积
}