如何在Webpack生产模式下打包源代码时避免丢失类名?

3
当我以开发模式捆绑以下代码并运行abc()时,
class Foo { ... }

export function abc () { return new Foo(); }

我得到了Foo { ... }

但是当使用生产模式打包时,我会得到类似于k { ... }的东西,并且我失去了有关类名的信息。

我该如何避免这种情况?

换句话说,我想要缩小代码,但是不想缩小类名,因为我想将源代码作为库使用,使用npm install my-github-repositoryrequire("abc")

1个回答

2

首先配置webpack的source map,然后使用uglifyjs-webpack-plugin包来设置输出的source map以保留类名和函数名。

new UglifyJsPlugin({
    sourceMap: true,
    parallel: 4,
    uglifyOptions: {
        keep_classnames: true,
        keep_fnames: true
    }
})

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接