美文网首页Vue
vue3.0 .env 文件配置全局环境变量

vue3.0 .env 文件配置全局环境变量

作者: 栗子daisy | 来源:发表于2020-01-20 16:05 被阅读0次

    文件命名

    必须以如下方式命名,不要乱起名,也无需专门手动控制加载哪个文件

    命名 说明 加载
    .env 全局默认,任何环境都加载合并
    .env.development 开发环境下的配置文件 npm run serve
    .env.production 生产环境下的配置文件 npm run build

    文件内容

    属性名必须以VUE_APP_开头,比如VUE_APP_XXX
    只有以 VUE_APP_ 开头的变量会被 webpack.DefinePlugin 静态嵌入到客户端侧的包中,NODE_ENV 和 BASE_URL 是两个特殊变量,在代码中始终可用

    .env (serve默认的环境变量)

    NODE_ENV = 'development'
    VUE_APP_BASE_API = 'https://demo.cn/api'
    VUE_APP_URL = 'https://wechat-timg.oss-cn-hangzhou.aliyuncs.com/demo'
    

    .env.production (build默认的环境变量)

    NODE_ENV = 'production'
    VUE_APP_BASE_API = 'https://demo.com/api'
    VUE_APP_URL = 'https://img-wechat.oss-cn-hangzhou.aliyuncs.com/demo'
    

    .env.analyz (用于webpack-bundle-analyzer打包分析)

    NODE_ENV = 'production'
    IS_ANALYZ = 'analyz'
    VUE_APP_BASE_API = 'https://demo.com/api'
    VUE_APP_URL = 'https://img-wechat.oss-cn-hangzhou.aliyuncs.com/demo'
    

    修改package.json

    "scripts": {
      "serve": "vue-cli-service serve",
      "build": "vue-cli-service build",
      "analyz": "vue-cli-service build --mode analyz",
      "lint": "vue-cli-service lint"
    }
    

    文件的加载

    根据启动命令vue会自动加载对应的环境,vue是根据文件名进行加载的,所以上面说“不要乱起名,也无需专门控制加载哪个文件”
    比如执行npm run serve命令,会自动加载.env.development文件

    获取环境变量

    通过process.env.VUE_APP_XXX获取环境变量
    (全局属性,任何地方均可使用)

    data():{
        return{
            url:process.env.VUE_APP_URL
        }
    }
    

    参考:https://blog.csdn.net/w405722907/article/details/94720868
    https://segmentfault.com/a/1190000017008697

    相关文章

      网友评论

        本文标题:vue3.0 .env 文件配置全局环境变量

        本文链接:https://www.haomeiwen.com/subject/isbjzctx.html