Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 如何将terserplugin配置为不损坏类名_Angular_Webpack_Terser - Fatal编程技术网

Angular 如何将terserplugin配置为不损坏类名

Angular 如何将terserplugin配置为不损坏类名,angular,webpack,terser,Angular,Webpack,Terser,类名在缩小过程中会被损坏,但不应该这样做 我尝试在破坏时设置保留属性,如下所述。不幸的是,这对我不起作用 我在bitbucket上有一个包含问题的回购 我注意到我犯了一个错误,没有将最新的信息源提交给bitbucket。很抱歉,我更新了回购协议。 我在该回购协议中使用的反自定义网页包配置如下: module.exports = { optimization: { minimizer: [ new TerserPlugin({

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

我尝试在破坏时设置保留属性,如下所述。不幸的是,这对我不起作用

我在bitbucket上有一个包含问题的回购

我注意到我犯了一个错误,没有将最新的信息源提交给bitbucket。很抱歉,我更新了回购协议。

我在该回购协议中使用的反自定义网页包配置如下:


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']
                        }
                    }
                }
            })
        ]
    }
};
我希望屏幕的标题显示类的名称,即“Foo”

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

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

谢谢你的回复。我按照你的建议添加了keep_fnames,但不幸的是,这并不能解决问题。现在,我在控制台中发现以下错误:


我想结束这个问题。起初,我用Webpack创建了一个问题,后来又用Angular cli创建了一个问题

要点是,您可以配置terserPlugin,但Angular在处理问题时会忽略该配置

为了节省时间,不要动态地尝试获取类名,而是添加一个具有相同名称的属性并使用它