总结vscode调试vue,nodejs的各种方法
之前写项目一直都是console.log()来调试的,浪费了很多时间,现在整理一下用vscode对nuxt(vue)前后端进行调试的方法
前端的调试
chrome+launch
使用chrome调试,模式为launch。不多说,直接上图





当执行到到的位置就会出现

chrome+attach
使用chrome调试,模式为attach,跟launch的区别是不会打开新的浏览器窗口


然后启动调试,之后马上切换到chrome,让vscode的调试程序可以“粘上”到你的项目

chrome自带
使用chrome自带的调试,在代码中加入debugger关键字即可

后端调试
node+attach
与上面前端的attach方法几乎一样,区别是chorme换成了node,只贴几个重要的图




debugger和编辑器打的小红点都是可以触发的
优点是基本不怎么用配置,缺点是每次启动都要attach一下
node直接启动
后面几种都是直接launch的方法,第一种为node直接启动的方法,如图

然后修改launch.json文件吧下面位置的路径改成你的项目启动入口


然后需要在后面加上,"console": "integratedTerminal",如果不加的话启动调试的时候看不见打包进度。而且,需要自动重启的话要再加上"runtimeExecutable": "nodemon",当然,前提是装了nodemon
这种方法适合不需要编译就可以直接运行的项目,而且需要知道入口文件的位置,不适合typescript项目。
npm脚本调试
添加配置的时候选择通过npm启动,如图

修改配置,其中端口号随意,并非项目的端口号

再修改pakage.json,添加--inspect,注意这个参数需要放在入口文件之前,否则会提示连不上端口的错误。

针对typescript
除了下面两种方法,使用前面的attach方法也是可以的,配置非常简单,推荐使用。
Tsconfig.json中添加或设置
"sourceMap": true创建launch.json,如果根目录下有tsconfig.json,vscode会生成如图的代码

然后command+shift+p查找task,或者在首选项设置里面找,点击配置task

拉到最下面,找到构建的那几项,如果有tsconfig.build.json一般就选这个,没有就选tsconfig.json

修改tas.json文件

修改launch.json文件


执行结果

针对typescript第二种方法
这里主要参考https://segmentfault.com/a/1190000011935122。
直接使用ts-node,和直接使用node调试js项目类似。
安装ts-node,
npm i ts-node创建launch.json,选择node,上面有这里不再赘述。
修改launch.json如图

其中args表示ts-node后面的参数,这里只填了当前文件
program选择ts-node的启动文件切换到项目入口文件,直接启动调试。

这种方法优点是不需要自行编译ts文件,缺点是要多装一个包,需要知道入口文件位置,而且不能热启动
总结
上面的方法基本覆盖了js项目大部分的比较常用的调试方法,而且本人全部测试过。前端的调试有chrome这个神器,非常简单,后端使用vscode的attach的方法基本可以应付所有的框架项目。
总结vscode调试vue,nodejs的各种方法的更多相关文章
- VsCode调试vue项目
VsCode调试vue项目 VsCode如何调试vue项目,VsCode需要安装插件以及配置launch.json文件. 找到"扩展"或者按快捷键"Ctrl+Shift+ ...
- 四、VSCode调试vue项目
1.先决条件设置 你必须安装好 Chrome 和 VS Code.同时请确保自己在 VS Code 中安装了 Debugger for Chrome 扩展的最新版本. 在可以从 VS Code 调试你 ...
- 如何用VSCode调试Vue.js
VS Code相关插件:Chinese (Simplified) Language Pack for Visual Studio Code Debugger for Chrome ESLint Vet ...
- vscode 调试vue.js程序
npm install -g vue-cli //安装vue-clivue init webpack projectName //创建项目 1.Ctrl+~ 打开命令行 ...
- [原创]使用vscode+es6写nodejs服务端调试配置
前端的小伙伴们在babel等的加持下,已经可以愉快的使用es6来写代码了. 然后对于服务端的nodejs就有点坑爹了,虽然原生支持了es6,但是只是部分支持,一些不支持的特性(比如module)使用了 ...
- Vue 项目 VSCode 调试
调试Vue搭建的前端项目 在项目根目录下的vue.config.js中添加: module.exports = { lintOnSave: false, //关闭eslint语法校验 //填写这部分 ...
- vscode调试js,安装了nodejs之后还出现无法在Path上找到运行时的node
vscode 调试js,安装了nodejs之后还出现无法在Path上找到运行时的node. 重启vscode解决
- 使用vscode调试Nodejs
之前想用vscode调试nodejs,总是不成功,也走很多弯路,现在记录下来. 首先新建一个文件夹,用vscode打开这个文件夹, 用vscode自带的终端执行npm init,输入名称,其他的可不输 ...
- 保姆级教程:VsCode调试docker中的NodeJS程序
最近在写NodeJS相关的项目,运行在docker容器中,也是想研究一下断点调试,于是查阅相关资料,最终顺利配置好了. 首先我选择了VsCode作为ide,并用VsCode来做NodeJS可视化deb ...
随机推荐
- 一文彻底搞懂BP算法:原理推导+数据演示+项目实战(上篇)
欢迎大家关注我们的网站和系列教程:http://www.tensorflownews.com/,学习更多的机器学习.深度学习的知识! 反向传播算法(Backpropagation Algorithm, ...
- 干净直接安装+PS下载
PS CS6 https://www.cr173.com/soft/247727.html 直接一键安装,很方便干净. 不要去华军软件下,广告浪费时间. 链接:https://pan.baidu.co ...
- Linux的五种IO模型及同步和异步的区别
前置知识 缓存 I/O 缓存 I/O 又被称作标准 I/O,大多数文件系统的默认 I/O 操作都是缓存 I/O.在 Linux 的缓存 I/O 机制中,操作系统会将 I/O 的数据缓存在文件系统的页缓 ...
- 深入理解Java AIO(一)—— Java AIO的简单使用
深入理解Java AIO(一)—— Java AIO的简单使用 深入理解AIO系列分为三个部分 第一部分也就是本节的Java AIO的简单使用 第二部分是AIO源码解析(只解析关键部分)(待更新) 第 ...
- Cygwin工具编译Ardupilot方法
注意:该编译方法生成的固件基于Chibios系统,如果想要Nuttx系统固件,需采用make编译,步骤见make编译说明部分. 软件安装准备 安装Cygwin 打开链接www.cygwin.com/i ...
- Promise入门详解
异步调用 异步 JavaScript的执行环境是单线程. 所谓单线程,是指JS引擎中负责解释和执行JavaScript代码的线程只有一个,也就是一次只能完成一项任务,这个任务执行完后才能执行下一个,它 ...
- C 部落划分
时间限制 : - MS 空间限制 : - KB SPJ 评测说明 : 1s,128m 问题描述 聪聪研究发现,荒岛野人总是过着群居的生活,但是,并不是整个荒岛上的所有野人都属于同一个部落,野人 ...
- python学习笔记--字符串格式化
字符串和常量 print(r'hello\py\thon') r 代表后面字符不进行转义,原样输出; 表示常量,命名时变量名字大写代表常量.NAME = 'liulixue'; 字符串表示:' ', ...
- SpringAOP入门
Spring的AOP aop概述 Aspect Oriented Programing 面向切面(方面)编程, aop:扩展功能不修改源代码实现 aop采取横向抽取机制,取代了传统纵向继承体系重复性代 ...
- JDK12不包含JAXB-API
##用JDK12环境下 做EUREKA的的时候 报错如下 java.lang.TypeNotPresentException: Type javax.xml.bind.JAXBContext not ...