VUE项目调试技巧

梦想与她 提交于 2020-02-26 18:08:11

1.console.log,console.info和console.error常见
2.alert,阻塞,少用,有点out
3.在代码中加入debugger,后面要记得移除
onClick:function () {
      debugger // 直接使用debugger打断点
      this.msg = 'change'
      console.log('this is console.log',this.msg)
    }
4.在config/index.js文件中更改devtool配置为source-map

详细可参考https://cn.vuejs.org/v2/cookbook/debugging-in-vscode.html
module.exports = {
     devtool: 'source-map',//默认是:cheap-module-eval-source-map
}

设置为 source-map,则可以生成.map文件,在chrome浏览器中调试的时候可以显示源代码,效果如下:

190812-vscode-debugging-source-map.png

cheap-module-eval-source-map选项效果:

190812-vscode-debugging.png

webpack中devtool的其它选项各代表什么呢:

参考// https://webpack.js.org/configuration/devtool/#development

eval:文档上解释的很明白,每个模块都封装到 eval 包裹起来,并在后面添加 //# sourceURL

source-map :这是最原始的 source-map 实现方式,其实现是打包代码同时创建一个新的 sourcemap 文件, 并在打包文件的末尾添加 //# sourceURL 注释行告诉 JS 引擎文件在哪儿

hidden-source-map :文档上也说了,就是 soucremap 但没注释,没注释怎么找文件呢?貌似只能靠后缀,譬如 xxx/bundle.js 文件,某些引擎会尝试去找 xxx/bundle.js.map

inline-source-map :为每一个文件添加 sourcemap 的 DataUrl,注意这里的文件是打包前的每一个文件而不是最后打包出来的,同时这个 DataUrl 是包含一个文件完整 souremap 信息的 Base64 格式化后的字符串,而不是一个 url。

eval-source-map :这个就是把 eval 的 sourceURL 换成了完整 souremap 信息的 DataUrl

cheap-source-map :不包含列信息,不包含 loader 的 sourcemap,(譬如 babel 的 sourcemap)

cheap-module-source-map :不包含列信息,同时 loader 的 sourcemap 也被简化为只包含对应行的。最终的 sourcemap 只有一份,它是 webpack 对 loader 生成的 sourcemap 进行简化,然后再次生成的。

vscode编辑器调试

vscode 调试一直有问题,debug模式已启动一会就一定卡死,尝试很多方式没成功过

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!