Webpack TerserPlugin 排除

use*_*258 6 minify reactjs webpack terser

我的 React 项目中的一个节点模块使用 vm.runincontext,并且此代码在缩小时无法运行。我当前的解决方案是关闭缩小,它的工作原理只是使加载花费很长时间:(。我想尝试不使用排除来缩小这个特定的节点模块,但无论我在那里传递什么,它都不会看起来它正在工作。这个解决方案看起来可以工作,如果我传递一个始终与 true 匹配的正则表达式,我的生产构建可以工作,但我不知道我现在是否需要创建一个评估每个文件的正则表达式

这是非常令人困惑的,因为我可以放置exclude:/(.*)/并且程序可以工作,但是如果我尝试放置与文件相关的任何内容,例如exclude:/node_modules/or /kekule/(模块的名称),那么这将不起作用。更奇怪的是我可以通过逆和exclude:/^((?!node_modules).)*$/ 或偶exclude:/^((?!kekule).)*$/,并且它们都有效

      optimization: {
        minimizer: [
          new TerserPlugin({
            exclude: /node_modules/,
          }),
        ],
      },
    }; 
Run Code Online (Sandbox Code Playgroud)

也尝试过使用这个它也不太工作

optimization: {
      minimize:isEnvProduction,
      minimizer: [
        // This is only used in production mode
        new TerserPlugin({
          terserOptions: {
            module: {
              noParse: (content) => /kekule/.test(content)
            },
            parse: {...
Run Code Online (Sandbox Code Playgroud)

还尝试将 module:{noParse...} 放置在层次结构中的 module.exports 下,但它也不起作用

有小费吗?谢谢