我有一个 NodeJS 应用程序,它将成为 AWS Lambda。
应用程序的主要 JS 文件是 app.js。
我还有一个 ./lib/index.js,它是主库,包含所有其他参考库代码。
我的想法是,我将 WebPack 设置为使用 ./lib/index.js 作为条目,并创建一个新的 ./lib/index.js,它是所有引用的依赖项/文件的组合。
我对此运行了 WebPack,解决了一些小问题;我有新的 ./lib/index.js。
问题是主要的 Lambda 代码有以下内容:
const lib = require('./lib/index');
...
lib.runRoutines(date);
WebPack 似乎将 lib.runRoutines 重命名为一些新名称,我不知道它是什么,在代码中也不容易找到。
有没有办法阻止 WebPack 重命名导出的函数,至少对于顶级库来说是这样?
尝试 Terser 插件。
per 如何在 Webpack 中禁用重命名函数名称? TypeScript、Javascript:
webpack.conf 的更简洁配置:
optimization: {
minimize: true,
minimizer: [
new TerserPlugin({
terserOptions: {
keep_classnames: true,
keep_fnames: true
}
})
]
},
请参阅Terser 插件文档了解可用选项。