【问题标题】:Use env variable as alias in webpack config在 webpack 配置中使用 env 变量作为别名
【发布时间】:2019-11-28 23:35:41
【问题描述】:

我有一个用例在环境变量上使用不同的 Webpack 别名。

在这种情况下,process.env.MY_ENV_VARIABLE 在 webpack 构建期间返回 undefined,同时在应用程序本身中返回我设置的变量。

Webpack 配置应该是这样的:

resolve: {
    alias: {
      '@my_path': path.resolve(__dirname, `src/${ENV.MY_ENV_VARIABLE}`),
    }
},

注意:我可以找到许多解决方案来使您的 .env 变量在您的最终应用程序中可用,但是在您的 webpack 配置本身中使用它没有任何用处...

【问题讨论】:

    标签: webpack environment-variables


    【解决方案1】:

    从@nickbullock 在this question 上的答案复制的工作答案:

    将此添加到 webpack 配置的顶部(如有必要,请构建一些检查):

    const DotEnv = require('dotenv').config({path: __dirname + '/.env'});
    
    const variableFromEnv = () => {
      return DotEnv.parsed['MY_ENV_VARIABLE'];
    };
    

    比调用你的函数在配置对象中返回你的变量:

    resolve: {
        alias: {
          '@my_path': path.resolve(__dirname, `src/${variableFromEnv()}`),
        }
    },
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-04-27
      • 1970-01-01
      • 2018-02-23
      • 1970-01-01
      • 2017-04-01
      • 2014-09-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多