我正在使用 Webpack 4、SourceMapDevToolPlugin和terser-webpack-plugin。
问题是我还需要修改缩小的 JS 包——将特定代码注入文件的开头。突变是使用自定义 webpack 插件进行的,该插件接受一个资产源字符串,在它前面加上我的代码并创建一个新的 RawSource。这显然破坏了源映射映射。如果我删除突变部分,那么一切正常。
这里的关键是在缩小之后但在生成源映射之前进行这种突变,而Terser是在我理解的同时进行的。
我使用的当前堆栈可以做到这一点吗?
泰瑟配置:
optimization: {
minimizer: [
new TerserPlugin({
sourceMap: true,
terserOptions: {
mangle: true,
ecma: 6,
compress: {
inline: 1,
pure_funcs: ['Set', 'Map'],
},
},
}),
],
},
SourceMapDevToolPlugin 配置:
plugins: [
new SourceMapDevToolPlugin({
filename: '[file].map',
publicPath: 'https://my-custom-url.net/source-maps/',
}),
],