gpt4 book ai didi

javascript - 如何修复 Webpack 在生产环境中破坏我的代码?

转载 作者:行者123 更新时间:2023-11-29 19:13:49 24 4
gpt4 key购买 nike

我正在使用 BitcoinJS 构建一个应用程序,并且发现使用 -p 标志会导致 webpack 破坏某些部分,从而破坏生成交易的能力。

有人建议我在配置中使用 noParsealias,这使问题变得更糟(整个应用程序根本无法加载)。

到目前为止,除了关闭生产之外,我还没有找到任何解决方法(这会在 javascript 文件中留下各种奇怪的东西,包括我的本地开发路径)。

此处提供示例项目(带有安装说明以及如何重现):https://github.com/Someguy123/example-webpack-issue

编辑/更新:@bebraw 提供了一个可行的解决方案,如果其他人想看到它的实际效果,可以在示例项目的 fixed 分支上找到它。

最佳答案

问题是在您的情况下,默认情况下 Uglify 破坏太多。根据 bitcoinjs-lib说明,您需要像这样排除某些名称:

plugins: [
new webpack.optimize.UglifyJsPlugin({
mangle: {
except: [
'Array', 'BigInteger', 'Boolean', 'Buffer',
'ECPair', 'Function', 'Number', 'Point'
]
}
})
]

配置插件后使用webpack代替webpack -p

它会使生成的包更大一些,但它会起作用。

另一种选择是在别处为 bitcoinjs-lib 单独生成 bundle ,然后使用它。您还必须在此处考虑重整,但这会使您的项目更整洁一些。

关于javascript - 如何修复 Webpack 在生产环境中破坏我的代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36814733/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com