【问题标题】:Webpack 5 Terser: How can I require 'uglify-module'Webpack 5 Terser:我如何需要'uglify-module'
【发布时间】:2021-01-19 02:54:59
【问题描述】:

我正在尝试使用 TerserPlugin 来缩小我的代码,我在他们的官方文档中找到了这个 sn-p:

optimization: {
    minimize: true,
    minimizer: [
      new TerserPlugin({
        terserOptions: {
          myCustomOption: true,
        },
        minify: (file, sourceMap, minimizerOptions) => {
          const extractedComments = [];
          const { map, code } = require("uglify-module").minify(file, {});
          return { map, code, extractedComments };
        },
      }),
    ],
  }

但是在添加了这个 sn-p 之后,我得到了一个错误:Error: Cannot find module 'uglify-module'

另外,在 npm 注册表中找不到这个“uglify-module”。

【问题讨论】:

    标签: javascript webpack bundler minify


    【解决方案1】:

    您应该使用uglify-js 而不是uglify-module

    【讨论】:

      【解决方案2】:

      uglify-module 是一个占位符,它的意思是“需要一个像 uglify 那样工作的模块”,因为那里有多个选项。不过,您实际上根本不需要实现 minify 函数。来自文档:

      允许您覆盖默认的缩小功能。默认情况下,插件使用 terser 包。对于使用和测试未发布的版本或分叉很有用。

      因此,除非您对缩小有非常特殊的需求,否则不应覆盖它。

      【讨论】:

        猜你喜欢
        • 2019-12-13
        • 2019-03-10
        • 1970-01-01
        • 1970-01-01
        • 2021-09-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多