可疑的 iconv-lite 依赖
Questionable iconv-lite dependency
我在一个 Angular 项目中工作了几个月,包大小非常大,我一直在尝试最小化主包并延迟加载一些路由。使用 webpack-bundle-analyzer
我看到捆绑包的很大一部分(g 压缩)是一个名为 iconv-lite
的包,它存在于 encoding
下,但我找不到包的哪一部分应用程序正在使用它。
angular 正在使用它吗?有人有想法吗?我可以在我的 yarn.lock
中看到一些东西与它有依赖关系,比如 jest
和 less
但那些不应该包含在主包中。
很高兴在这里进入某个方向。
经过大量调查,我们发现问题出在名为 gettext-parser
的依赖项上。 gettext-parser
不适用于浏览器。 Webpack 填充了所需的 node.js 模块,其中之一是 body-parser
,然后依次是 iconv-lite
.
我们通过更新到 Angular 12 发现了这一点,当时 webpack@5
停止了 polyfilling node.js 依赖项并且它在构建过程中开始抛出错误。
我在一个 Angular 项目中工作了几个月,包大小非常大,我一直在尝试最小化主包并延迟加载一些路由。使用 webpack-bundle-analyzer
我看到捆绑包的很大一部分(g 压缩)是一个名为 iconv-lite
的包,它存在于 encoding
下,但我找不到包的哪一部分应用程序正在使用它。
angular 正在使用它吗?有人有想法吗?我可以在我的 yarn.lock
中看到一些东西与它有依赖关系,比如 jest
和 less
但那些不应该包含在主包中。
很高兴在这里进入某个方向。
经过大量调查,我们发现问题出在名为 gettext-parser
的依赖项上。 gettext-parser
不适用于浏览器。 Webpack 填充了所需的 node.js 模块,其中之一是 body-parser
,然后依次是 iconv-lite
.
我们通过更新到 Angular 12 发现了这一点,当时 webpack@5
停止了 polyfilling node.js 依赖项并且它在构建过程中开始抛出错误。