类名在缩小期间被破坏,但不应该这样做
我尝试在按照此处https://github.com/webpack-contrib/terser-webpack-plugin#terseroptions所述进行修改时设置保留属性。不幸的是,这对我不起作用。
我在 bitbucket 上有一个包含问题的仓库,https: //bitbucket.org/JohanBeumer/angular-ivy-aot/src/master/ 。
我注意到我没有向 bitbucket 提交最新的源代码是一个错误。抱歉,我更新了 repo。
我在该 repo 中使用的自定义 webpack 配置如下:
module.exports = {
optimization: {
minimizer: [
new TerserPlugin({
terserOptions: {
// https://github.com/webpack-contrib/terser-webpack-plugin#terseroptions
compress: false,
keep_fnames: true,
keep_classnames: true,
mangle: {
keep_fnames: true,
keep_classnames: true,
properties: {
reserved: ['Foo', 'BaseModel']
}
}
}
})
]
}
};
Run Code Online (Sandbox Code Playgroud)
我希望屏幕的标题显示类的名称,即“Foo”。
我使用以下命令构建应用程序: ng build --prod --aot
我的实际问题是,如何防止 webpack minify 修改类名?
感谢 Tony Ngo 的回应。我按照您的建议添加了 keep_fnames 但不幸的是这并不能解决问题。现在我在控制台中收到以下错误: