webpack调试必备配置之SourceMap介绍

  1. 了解sourcemap

Sourcemap是为了解决实际运行代码(打包后的)出现问题时无法定位到开发环境中的源代码的问题。

 

 

 

 

devtool选项

 

 

 

 

5个基本类型:

(1)         eval

每个模块都使用 eval() 执行,每一个模块后会增加sourceURL来关联模块处理前后的对应关系。如下图

 

 

 

 

 

由于会映射到转换后的代码,而不是映射到原始代码(没有从 loader 中获取 source map),所以不能正确的显示行数。因为不需要生成模块的sourcemap,因此打包的速度很快。

 

(2)         source-map

 

source-map会为模块生成独立的soucemap文件。

 

 

打包后的模块在模块后面会对应引用一个.map文件,同时在打包好的目录下会生成相应的.map文件。如下图

 

 

(3)         Inline

 

与source-map不同,增加inline属性后,不会生成独立的.map文件,source map 转换为 DataUrl 后添加到 bundle 中。如下所示:

 

 

 

(4)         cheap

 

cheap属性在打包后同样会为每一个模块生成.map文件,但是与source-map的区别在于cheap生成的.map文件会忽略原始代码中的列信息,也不包含loader的sourcemap。

 

(5)         module

 

包含了loader模块之间的sourcemap,将 loader source map 简化为每行一个映射。

 

  1. 使用sourcemap调试

 

(1)js调试

 

             

 

(2)css调试

              调试css时需要将压缩css的插件注释掉

                           

 

                            Css sourcemap设置

                    

posted @ 2019-11-19 23:33  lanlanDong  阅读(623)  评论(0编辑  收藏  举报