Vue项目关闭sourceMap后生产包里还是有 sourceMappingURL注释怎么办?

UX怡萱 阅读 25

最近在做Vue项目代码混淆时遇到个奇怪的问题,虽然在vue.config.js里设置了productionSourceMap: false,但打包后的.js文件末尾还是有这个注释://# sourceMappingURL=app.bundlename.js.map

我尝试过:

module.exports = {
  productionSourceMap: false,
  chainWebpack: config => {
    config.optimization.delete('splitChunks') // 其他优化配置
  }
}

但构建后的main.js里 sourceMappingURL依然存在,导致混淆后的代码结构还能通过这个映射文件追踪到原始结构。是不是还有其他地方需要配置?用的是Vue CLI 5.0.8版本,构建命令是npm run build

我来解答 赞 5 收藏
二维码
手机扫码查看
2 条解答
Mc.瑞瑞
Mc.瑞瑞 Lv1
我之前这样搞的,vue.config.js里除了关掉productionSourceMap,还得在configureWebpack里把devtool设成false:

module.exports = {
productionSourceMap: false,
configureWebpack: {
devtool: false
}
}


这下打包出来的js就不会带sourceMappingURL了。
点赞 1
2026-02-13 07:09
闲人之芳
省事的话,直接在 vue.config.js 里加上 devtool: false 就行了。

module.exports = {
productionSourceMap: false,
configureWebpack: {
devtool: false
}
}


这玩意儿不关掉,就算关了 sourceMap 配置,webpack 还是会偷偷留个 sourceMappingUrl 注释。
点赞 1
2026-02-11 09:13