dotenv-webpack 和 terser:来自 Terser 的错误分配无效

dotenv-webpack and terser: error from Terser Invalid assignment

我正在开发电子应用程序。我在 webpack 配置中添加了 dotenv-webpack 插件,但是当我尝试构建它时,我收到了来自 Terser 的错误。此外,如果我评论 TerserPlugin 配置,错误仍然出现。

Error from Terser Invalid assignment.

import TerserPlugin from 'terser-webpack-plugin';
import Dotenv from 'dotenv-webpack';

export default {
  // ...
  optimization: {
    minimizer: [
      new TerserPlugin({
        parallel: true,
      }),
    ],
  },

  plugins: [
    // ...
    new Dotenv({
      path: path.join(__dirname, '../../.env'), // The path is correct
      systemvars: true,
    }),
  ]
}

这是由于 debug 包引起的。 node.js 文件有以下代码:

function save(namespaces) {
    if (namespaces) {
        process.env.DEBUG = namespaces;
    } else {
        // If you set a process.env field to null or undefined, it gets cast to the
        // string 'null' or 'undefined'. Just delete instead.
        delete process.env.DEBUG;
    }
}

由 Dotenv 插件替换为以下行:

function save(namespaces) {
    if (namespaces) {
       "true" = namespaces;
    }  else {
        // If you set a process.env field to null or undefined, it gets cast to the
        // string 'null' or 'undefined'. Just delete instead.
        delete "true;
    }