source map 方便我们在日常开发中的调试,映射转换后的代码和源代码的关系。
使用
在webpack打包配置文件中,如webpack.config.js中加入配置:
devtool: 'source-map'
webpack官网对于devtool的介绍:webpack.js.org/configurati…
不同模式下的对比
字段介绍:
- source-map:生成
.map文件用于映射 - eval: 使用eval函数执行代码,速度快,性能好
- cheap:Source Map 是否包含列信息,大幅度提高sourcemap效率
- module:是否是loader处理之前的模块源代码
- inline:用dataUrl的方法把映射的代码引入到生成的代码中,体积增大
- nosource:有错误提示信息,没有源代码,生成环境不会暴露源代码
推荐使用
开发模式
cheap-module-eval-source-map
- 定位到行,足够使用
- 代码经过loader转换过后的差异较大,所以加上module
- 首次打包速度慢,热更新时相对较快
生产模式
none 或者 nosources-source-map 不用sourcemap或经发现错误即可,减少暴露源代码
对比小案例
可以亲身感受一下不同模式带来的sourcemap效果
'eval',
'eval-source-map',
'cheap-source-map',
'cheap-module-source-map',
'inline-cheap-source-map',
'inline-cheap-module-source-map',
'source-map',
'inline-source-map',
'hidden-source-map',
'nosources-source-map'
github地址:github.com/hzc168/webp…