问题标签 [terser]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1941 浏览

webpack - 通过插件复制源时使用 terser webpack 插件而不是 uglify

我的包中有以下包webpack.config.js

这是我使用这些包的配置的一部分:

因此,我最小化了我的常用捆绑包,terser并通过插件uglify复制的源提供了缩小。copy-webpack我想摆脱uglify并替换它,terser因为它们都被用于缩小。可能吗?terser插件可以在配置部分之外使用吗optimization?或者也许我可以以某种方式告诉他也尽量减少我手动复制的来源?

0 投票
3 回答
712 浏览

ruby-on-rails - rails webpack 编译在生产中挂起 78% [0] 块资产优化 TerserPlugin

我正在将 Rails 5 与 webpack 一起使用,尝试为生产进行编译,因为资产没有出现在生产中。

如果我尝试NODE_ENV=production rake webpacker:compile,那么它会挂起Compiling...

在阅读生产中的编译失败并且不够详细之后,我尝试了NODE_ENV=production bin/webpack --progress --config config/webpack/production.js。它挂在78% [0] chunk asset optimization TerserPlugin

我读了这个https://fontawesome.com/how-to-use/with-the-api/other/tree-shaking#issues,但我不确定如何切换 Rails webpack 以使用 Babel Minify 而不是 Terser。

任何帮助更改 Rails 以使用Babel Minify 插件将不胜感激。

0 投票
1 回答
543 浏览

terser - Terser - 当原始地图文件还包含源时如何包含源?

我正在使用 typescript transpiler 构建 index.js,它生成包含原始 typescript 文件的 index.js.map。

我现在想压缩该文件并将原始源代码保留在 index.js.map 文件中,这样我就可以逐步完成打字稿代码而不是转译代码。

我正在运行的脚本:

将 index.js 替换为压缩版本,并将 index.js.map 文件替换为转译源而不是原始 typescript 源。terser 是否能够在 sourcemap 文件中保留源?

0 投票
1 回答
748 浏览

reactjs - 生产模式风格的组件缩小导致类型错误

当我构建我的应用程序时,在 webpack 开发模式下,一切正常。

但是当我在生产模式下运行 webpack 时,我得到了 Uncaught TypeError: Cannot read property __emotion_forwardProp of undefined。似乎该标签以某种方式未定义。

我在@emotion 中找到了导致错误的代码,但不知道为什么以及如何修复它:

即使在生产 NODE_ENV 的非缩小版本上,我也没有收到错误,这意味着问题不在于我的代码,而在于情感和缩小的东西。

我正在使用默认的 Terser webpack 插件进行缩小。Webpack 4.31.0 @emotion 10.0.10

你有什么建议吗?

0 投票
1 回答
1053 浏览

django - Django 压缩器不会丑化 javascript

我希望使用Django Compressor来缩小和丑化我的 css 和 javascript。我已经让它工作了,这样我就可以进行离线压缩,并且所有需要的 javascript 都被正确压缩。

问题是它不会使代码变得丑陋。我的设置:

yuglify在我的路上。我尝试在要测试的文件上手动运行它,即:yuglify file.js --mangle. 事实证明yuglify(它是uglify-js的包装器)不支持es6及更高版本。

我发现了另一个名为terser的 uglifier ,它可以在终端上通过es6代码完美运行。因此,我尝试用更简洁的方式替换上述设置,即:

这在django-compressor. 结果是文件被缩小但没有被丑化。

我将不胜感激有关使用django-compressor或使用替代软件包的任何建议。

0 投票
3 回答
2037 浏览

javascript - Terser 不提供缩小文件

我正在尝试使用 grunt 和 terser 缩小 angularjs 应用程序。我首先使用了 uglifiy-es,但后来读到它有一些问题。所以我尝试了简洁。但输出并没有给我缩小文件。

gruntfile.js

0 投票
1 回答
7721 浏览

angular - 如何配置 terserplugin 不破坏类名

类名在缩小过程中被破坏,但不应该这样做

我尝试按照此处https://github.com/webpack-contrib/terser-webpack-plugin#terseroptions的描述在修改时设置保留属性。不幸的是,这对我不起作用。

我有一个包含问题的 bitbucket 回购协议,https: //bitbucket.org/JohanBeumer/angular-ivy-aot/src/master/ 。

我注意到我犯了一个错误,没有将最新的资源提交给 bitbucket。对不起,我更新了回购。

我在该仓库中使用的自定义 webpack 配置如下:

我希望屏幕的标题显示类的名称,即“Foo”。

我使用以下命令构建应用程序:ng build --prod --aot

我的实际问题是,如何防止 webpack minify 破坏类名?

感谢托尼·吴的回复。我按照您的建议添加了 keep_fnames 但不幸的是,这并不能解决问题。现在我在控制台中收到以下错误:

控制台错误

0 投票
3 回答
2903 浏览

javascript - 如何使用 Webpack & Terser 只压缩代码

我正在尝试使用 webpack 来压缩我的代码(删除新行和空格),仅此而已。我不想要任何 webpack__require__,不要修改,不要丑化,只需删除空格和新行。

我必须在 terser/webpack 中提供哪些选项才能实现这一目标?

似乎不这样做。先感谢您。

0 投票
2 回答
1608 浏览

symfony - 如何使用 TerserPlugin 和 webpack-encore 进行缩小

有了这个使用 webpack-encore 的 webpack.config.js,并用 terser 缩小,我可以成功编译,但绝对没有任何东西被缩小。注释和完整的变量名称仍然存在。

这段代码有什么问题?

0 投票
2 回答
17189 浏览

javascript - 如何在 webpack 中使用 Terser

我正在使用带有Vue 3.9.3 的Webpack 6.10.2 。 此安装使用 Uglify.js,它在我运行时会引发错误,因为它无法与 ES6 一起使用。npm run build

为了解决这个问题,我按照建议删除了 Uglify 表单webpack.config.js,并尝试使用 Terser 来缩小生产中的 JS。我所做的每一次尝试都会导致错误,因为我没有正确添加语法。当我删除 Terser 时,应用程序会编译,但显然没有 JS 缩小,所以我在webpack.config.js.

谁能告诉我哪里出错了。

谢谢

webpack.config.js :

包.json: