概念(大白话)
解决源代码和目标生成代码的映射关系
1.现在知道dist目录下main.js文件第96行出错
2.souceMap 它是一个映射关系,它知道dist目录下main.js文件96行,实际上对应的是src目录下index.js文件中的第一行
3.当前其它是index.js中第一行代码出错了
关闭SouceMap
开启SourceMap
开启SourceMap后,dist文件夹下会多出.js.map文件,这个文件里面是映射的对应关系
添加inline前缀
映射文件会被直接写进main.js当中,base64形式的字符串,在main.js的底部
添加cheap前缀
- 告诉我那一行出错就好,不用告诉我那一列出错,节约性能,提高打包速度
- 只映射业务代码,而不映射第三方包、库
添加module前缀
映射第三方包、库
eval打包方式
- 效率最快,性能最好的方式
- 不在main.js文件最后生成映射
- 针对比较复杂代码,eval提示出来的错误可能并不全面
开发模式下的最佳devtool配置
cheap-module-eval-source-map
这种情况下提示出来的错误是比较全的,同时打包速度也是比较快的
上线模式下的devtool最佳配置
cheap-module-source-map