博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Vue开发与调试工具--调试工具篇
阅读量:6214 次
发布时间:2019-06-21

本文共 1553 字,大约阅读时间需要 5 分钟。

hot3.png

主要讲三个东西:

  • Vue.js devtools开发工具的使用

  • 使用debugger和sourcemap调试Vue组件

  • vscode中调试Vue组件

Vue.js devtools开发工具的使用

在Chrome或Firefox浏览器的扩展插件仓库里搜vue devtool,安装Vue.js devtools.

  • 打开vue项目,在控制台选择vue

     
     
    image
  • 可操作组件查看信息变化

     
     
    image

使用debugger和sourcemap调试Vue组件

针对vue-cli webpack官方脚手架,打开build/webpack.dev.conf.js文件,找到下面这句:

devtool: '#cheap-module-eval-source-map',

将其修改为:

devtool: '#eval-source-map ',

要修改的地方已经都改好了,就是这么简单,惊不惊喜,意不意外。

现在是具体调试了。假设我们想调试App.vue这个组件,可以在想要调试的代码前添加debugger方法,如下图所示:

 
image

然后运行npm run dev,启动服务后刷新页面(刷新前先把浏览器开发者工具打开),可以看到在程序进入App.vue组件mounted这个组件生命周期钩子里后,指定到debugger处时程序就被debug了。如下图所示,剩下的大家应该都很熟悉了。可以看到,此处显示的代码就是我们组件里的实际代码,并非被我们编译混淆后的那种代码,可读性非常好。

 
image

vscode中调试Vue组件

先决条件

你必须安装好 Chrome 和 VS Code。同时请确保自己在 VS Code 中安装了 Debugger for Chrome 扩展的最新版本。

 
image

请通过 Vue CLI,遵循它的 README 中的安装文档安装并创建一个项目。然后进入这个新创建的应用的目录,打开 VS Code。

从 VS Code 启动应用

  • 点击在 Activity Bar 里的 Debugger 图标来到 Debug 视图,然后点击那个齿轮图标来配置一个 launch.json 的文件,选择 Chrome 环境。然后将生成的 launch.json 的内容替换成为接下来的两段配置:
 
image
{  "version": "0.2.0",  "configurations": [    {      "type": "chrome",      "request": "launch",      "name": "vuejs: chrome",      "url": "http://localhost:8080",      "webRoot": "${workspaceFolder}/src",      "breakOnLoad": true,      "sourceMapPathOverrides": {        "webpack:///src/*": "${webRoot}/*"      }    }  ]}

设置一个断点

  • 在 src/components/HelloWorld.vue 的 line90 的地方设置一个断点,这里的 data 函数返回一个字符串。

     
     
    image
  • 在根目录打开你惯用的终端并使用 Vue CLI 开启这个应用:

npm start
  • 来到 Debug 视图,选择 ‘vuejs: chrome’ 配置,然后按 F5 或点击那个绿色的 play 按钮。

  • 随着一个新的 Chrome 实例打开 ,你的断点现在应该被命中了。

     
    image

转载于:https://my.oschina.net/u/3371661/blog/2964017

你可能感兴趣的文章
C# 开发Chrome内核浏览器(WebKit.net)
查看>>
java.lang.ClassNotFoundException与java.lang.NoClassDefFoundError的区别(转)
查看>>
重构——13将类内联化(Inline Class)
查看>>
算法训练 未名湖边的烦恼
查看>>
iPhone5se难逃“酱油”命运?
查看>>
Controller 里面就只应该存放这些不能复用的代码(转)
查看>>
Nginx 反向代理 如何在web应用中获取用户ip
查看>>
Android零基础入门第63节:过时但仍值得学习的选项卡TabHost
查看>>
vue版本冲突解决办法
查看>>
wpa_supplicant使用笔记-wpa_cli iwconfig
查看>>
《C程序员:从校园到职场》出版预告(4):从“散兵游勇”到“正规部队”
查看>>
最近在线笔试的一些感想和总结,阿里巴巴,腾讯,百度,360。c++研发,机器学习等岗位...
查看>>
中间件概述
查看>>
阿里巴巴阳振坤:关系数据库挑战与机遇
查看>>
我的【一号网盘】→基于技术的云盘
查看>>
基于Nginx和Consul构建高可用及自动发现的Docker服务架构
查看>>
农业部与电信签约物联网云计算惠"三农"
查看>>
如何改进安全运营和安全分析水平
查看>>
今天是蚂蚁金服三周岁生日
查看>>
BaaS、FaaS、Serverless都是什么馅儿?
查看>>