学习链接:

https://cnodejs.org/topic/5a9661ff71327bb413bbff5b

https://github.com/nswbmw/node-in-debugging/blob/master/4.3%20Visual%20Studio%20Code.md

1、新建 test 文件夹,新建 index.js

var http = require('http');

var server = http.createServer(function (req, rep) {
rep.writeHead(200, {"Content-Type": "text/plain"});
console.log(20180716211300, 'Hello');
rep.end("Hello World!!");
}) server.listen(3000, function (err) {
console.log('start');
});

2、用 vscode 打开 test 文件夹(项目)

  1. 单击左侧第 4 个 tab,切换到调试模式。
  2. 单击代码第 5 行 rep.end("Hello World!!"); 左侧空白处添加断点。
  3. 单击左上角 ”调试“ 的绿色三角按钮启动调试。(你可能需要配置一下launch.json)
  4. 单击左上角的终端图标打开调试控制台。

你可能需要配置一下launch.json:

{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [ {
"type": "node",
"request": "launch",
"name": "启动程序",
"program": "${workspaceFolder}/\\index.js"
}
]
}

3、开始愉快的调试

切换到终端,然后输入 curl http://localhost:3000,正常的话,会发现断点成功。

4、再切换到调试控制台(chrome Dev Tool)

就可以打印出变量了。当然通常直接通过鼠标查看变量更方便

5、自动重启nodejs

首先,全局安装 nodemon:

$ npm i nodemon -g

然后,修改 launch.json:

{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [ {
"type": "node",
"request": "launch",
"name": "启动程序",
"runtimeExecutable": "nodemon",
"restart": true,
"console": "integratedTerminal",
"program": "${workspaceFolder}/\\index.js"
}
]
}

多添加了如下几个字段:

"runtimeExecutable": "nodemon",
"restart": true,
"console": "integratedTerminal",

这时候我们在运行,保存会自动重启了

6、对现有Nodejs进程进行调试

第一步:我们不使用 vs code 启动项目,而使用传统手动命令行启动 nodejs

$ node index.js

第二步:需要先对launch.js 进行配置:

{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [ {
"name": "Attach to node",
"type": "node",
"request": "attach",
"restart": true,
"processId": "${command:PickProcess}"
}
]
}

配置成功后,启动选项会变成 “Attach to node”

此时点击运行按钮,会列出所有的 node 线程。

附加成功后,就可以试试上例的断点调试之类的啦~~

Visual Studio Code 调试 nodejs (断点调试、自动重启、进程调试)的更多相关文章

  1. Visual Studio Code搭建NodeJs的开发环境

    一.Visual Studio Code搭建NodeJs的开发环境 1.下载安装NodeJs并配置环境变量 可以参考:NodeJs的安装和环境变量配置 2.下载安装 VS Code编辑器 可以参考:V ...

  2. 剖析并利用Visual Studio Code在Mac上编译、调试c#程序

    0x00 前言 一周多以前的微软的Build大会上,微软发布了一个让很多人眼前一亮的工具,也是本文的主角——Visual Studio Code.很多使用Windows的朋友都很高兴,认为又多了一个很 ...

  3. 剖析并利用Visual Studio Code在Mac上编译、调试c#程序【转】

    0x00 前言 一周多以前的微软的Build大会上,微软发布了一个让很多人眼前一亮的工具,也是本文的主角——Visual Studio Code.很多使用Windows的朋友都很高兴,认为又多了一个很 ...

  4. Visual Studio Code 搭建Python开发环境

    1.下载Python https://www.python.org/downloads/windows/ 选择一个版本,目前2.0的源码比较多,我下载的2.7.12 2.配置环境变量 3.Visual ...

  5. Visual Studio Code 与 Github 集成

    使用Visual Studio Code进行Nodejs开发充满了便利,为了更好的进行开发工作,有必要使用Github进行代码管理. Visual Studio Code已经集成了GIT组件: htt ...

  6. Visual Studio Code - 快捷键

    默认快捷键 Visual Studio Code 默认快捷键 代码提示(自动补全,自动完成) 默认是快捷键是Ctrl+Space,与搜狗输入法切换中英文的快捷键冲突了..可以改搜狗输入法的快捷键(Sh ...

  7. Visual Studio Code 配合 Node.js 轻松实现JS断点调试

    一直喜欢vscode这个编辑器,今天看在liaoxuefeng.com学习nodejs时,看到上面 讲了使用vscode配合nodejs调试JS代码,原来这么简单,现在分享如下: 本人环境: Visu ...

  8. 如何用Visual Studio Code远程调试运行在服务器上的nodejs应用

    假设我有一个nodejs应用,运行在AWS - 亚马逊云平台上(Amazone Web Service).我想用本地的Visual Studio Code来远程调试服务器端的nodejs应用. Vis ...

  9. visual studio code 调试nodejs 配置简单HTTP服务器

    介绍 Visual Studio Code是一个轻量级的Web集成开发环境on Linux,Mac and Windows,特别是作为前端人员来了, 多了一个可供选择的生产力工具IDE,调试js代码简 ...

  10. Visual Studio Code 通过 Chrome插件Type Script断点调试Angular 2

    1. 下载Visual Studio Code (https://code.visualstudio.com/) 2. 安装插件Debugger for chrome 3. 确定tsconfig.js ...

随机推荐

  1. ListView 拖拽

    private void ListView1_MouseMove(object sender, MouseEventArgs e) { Patientappointment appointment = ...

  2. IE11与Cognos怪谈

    想必大家都知道高版本的IE运行Cognos相关组件的时候要设置兼容性,安全级别相对调低等设置.但是升级了win10系统后,默认的IE版本是IE11的,装了Cognos10.2.1之后,进行了一个常规的 ...

  3. Jmeter-Maven-Plugin高级应用:Modifying Properties

    Modifying Properties Pages 12 Home Adding additional libraries to the classpath Advanced Configurati ...

  4. ArcGIS Pro体验02——启动、创建工程

    所有的猜测都是眼睛看到的,自己想到的,可能不一定正确哈. 任务界面十分简洁,左上是创建新工程,右上是账户名称,左上是关于. 可以直接创建一个工程,Blank应该是无类型,最后保存再选择:Global ...

  5. ZH奶酪:Ubuntu客户端通过SSH方式远程登录Ubuntu服务器

    1.概述 传统的远程登录(telnet,rlogin)时不安全的,他们在网络上用明文传输口令和数据,SSH则是安全的,openssh提供两种级别的验证方式. (1)基于口令的安全验证:知道服务器的帐号 ...

  6. linux more 上一页,下一页

    linux more 上一页,下一页 使用more命令可以分页查看内容: 如: more install.txt 分页查看文本内容: 按回车:默认下一行数据: 按空格键盘,默认下一页,以当前屏幕为单位 ...

  7. 微信小程序 - 获取所在位置(省、市、区)

    实现步骤 1. 获取当前经纬度 2. 调用腾讯(百度.高德)地图对应的请求地址,一般都会有独一的key, 譬如 腾讯地图调用地址: https://apis.map.qq.com/ws/geocode ...

  8. eclipse 代码上传github 笔记

    第一步 先share project 如图所示  第二步 如果所示  第三步 点击 下面的create 然后点击完成  第四步提交  第五步: 第六步: 

  9. ORACLE NVL 和 NVL2 函数的使用

    NVL函数是一个空值转换函数,在SQL查询中主要用来处理null值.在不支持 null 值或 null 值无关紧要的情况下,可以使用 NVL( ) 来移去计算或操作中的 null 值. Oracle在 ...

  10. jquery.dataTables动态列

    jquery.dataTables  版本1.10.7 直接上代码: 0.table <table id="popReportTable"> <thead> ...