webpack能否从bundleing中排除节点模块中的单个文件



在我的项目中,我有一个强制性的节点模块/node_modules/@scope/theme。由于未知的原因,它包含了一个异步函数的示例,对this is how you do async functions这样的注释什么都不做。它位于/node_modules/@scope/theme/build/module/lib/async.js,这导致IE11出现故障。现在我想把它从我的webpack捆绑包中排除,但我就是没有完成。

我用module.rules.excludetried module.exports.externals尝试了很多东西,但根本不起作用。在这里输入代码

更好的方法是修补lib,我使用patch-package来完成。

只需从node_modules修改文件,然后运行npx patch-package @scope/theme——它将在patches文件夹中创建一个diff文件。

为了在您的CI(或其他开发人员(中应用相同的补丁,您应该在postinstallhook中运行patch-package

// package.json
"scripts": {
"postinstall": "patch-package"
}

这将在安装lib的依赖项时应用补丁(已提交(。

最新更新