vue环境常量拓展

 

一个环境文件(如 .env  .env.dev  .env.prod )只包含环境变量的“键=值”对;

只有 NODE_ENVBASE_URL 和以 VUE_APP_ 开头的常量将通过 webpack.DefinePlugin 静态地嵌入到客户端侧的代码中,

但我们可以通过修改webpack的配置来让项目支持其他命名方式的常量:

// vue.config.js
module.exports = {
    chainWebpack: config => { // CLI内部webpack配置
      config.plugin('define').tap(args => {
      Object.keys(process.env).forEach(key => {
        // 忽略含有 npm、VSCODE 的环境常量
        /npm|VSCODE/.test(key) || (args[0]['process.env'][key] = JSON.stringify(process.env[key]))
      })
      return args
    })
  } 
}

 

官网还提到可以使用 dotenv-expand 来实现环境常量扩展 (Vue CLI 3.5+ 支持),感兴趣可自行研究。

posted @ 2022-02-16 10:22  青云码上  阅读(181)  评论(0编辑  收藏  举报