一:介绍

NodeJS开发有很多种调试方式,比如输出Log、WebStorm自带的调试器、Node Inspector等,其中Node Inspector是比较流行和被推荐的一种。

但是Node Inspector调试流程比较繁琐,需要同时打开两个控制台执行命令,并要打开Chrome浏览器,把控制台的输出结果URL复制粘贴到Chrome中才能调试,并且调试完后需要手动的关掉控制台命令框。

本文就是介绍如何简单、方便、快捷的使用Node Inspector调试NodeJS. 如果你还不会使用Node Inspector,请参见三

二:快捷使用方法(如果你还不会使用Node Inspector,请参见三)

快捷使用Node Inspector的原理是通过调用Bat脚本,让它自动的执行命令,免去我们手动操作的麻烦。具体步骤如下:

1. 新建debug.bat文件。此bat文件做得工作有:

    • 启动node项目的调试
    • 启动node inspector
    • 启动Chrome并自动导航到调试地址。

代码如下:  server.js为你的项目启动的入口,port 5858为默认node-inspector使用的端口

start cmd /k node --debug C:\Work\Code\Exercises\Web\server.js

start cmd /k node-inspector &

start chrome "http://127.0.0.1:8080/debug?port=5858"

2. 新建stop.bat文件。此bat做的工作是自动关闭调试时打开的两个控制台命令窗。代码如下:

taskkill /IM cmd.exe /FI "WINDOWTITLE eq C:\windows\system32\cmd.exe - node*"

3. 开始调试。WebStorm里输入debug,将会自动调用debug.bat命令启动调试,输入stop自动调用stop.bat停止调试。其他的开发工具原理一致。注意:Debug.bat和stop.bat路径要放在命令执行的当前目录下。

 三:Node Inspector使用方法

  引自:http://jingyan.baidu.com/article/dca1fa6fbd580ff1a44052de.html

  1. 使用命令$ npm install -g node-inspector 安装。安装后就可以使用了。之后在命令行中执行“node --debug app2.js”。app2.js为你需要调试的程序的名称。

     
     
  2. 接着再打开一个命令窗口,执行命令“node-inspector &”。执行成功后会显示一个地址,使用浏览器打开这个地址,浏览器需要是Chrome。
     
     
  3. 将打开链接后,可以看到调试工具已经加载代码了,在需要设置的地方点击就可以。设置断点的地方在右边会自动加载断点列表。
     
     
  4. 接着在chrome中再打开一个页签,打开你需要调试的页面。执行你需要的操作,当执行到设置断点的时候,页面会暂停加载,点击回到原来的node-inspector页面,可以看到调试的信息。
     
     
  5. 把鼠标移动到源码断点的位置上也可以看到变量的信息。
     
     
  6. 在调试工具的右边也提供了一些调试功能,单步进入,取消断点等功能。
     
     
     
  7. 通过以上功能的使用,我们就可以比较方便的调试我们的node.js程序了。

快捷使用Node Inspector调试NodeJS的更多相关文章

  1. nodejs 使用Google浏览器进行可视化调试——Node Inspector工具

    1.npm安装Node Inspector工具,全局安装 命令行执行npm install -g node-inspector 2.启动Node Inspector工具,命令行执行 node-insp ...

  2. node-debug 三法三例之node debugger + node inspector

    大家对nodejs调试应该都比较头疼,至少我这个不用IDE写js的人很头疼这个,其实node的生态圈非常好 有非常好的工具和非常潮的开发方式 这里总结了3法3例,希望能对大家有所帮助 文档地址  ht ...

  3. 调试NodeJS应用

    OS:Windows 1.下载安装NodeJS 点击http://nodejs.org/界面上“Install”,下载后运行安装,默认安装到到C:\Program Files\nodejs.安装后确认 ...

  4. Node Inspector 代理实现

    本文首发于 https://github.com/whxaxes/blog/issues/9 背景 平时做 node 开发的时候,通过 node inspector 来进行断点调试是一个很常用的 de ...

  5. node js 调试方法

    1. node-debug tutorial 大家对nodejs调试应该都比较头疼,至少我这个不用IDE写js的人很头疼这个,其实node的生态圈非常好 有非常好的工具和非常潮的开发方式 这里总结了3 ...

  6. node.js调试入门

    1-1 Inspector介绍 使用Inspector调试Node.js的优势 可查看当前上下文的变量 可观察当前函数调用堆栈 不侵入代码 可在暂停状态下执行指定代码 Inspector的构成以及原理 ...

  7. Node.js调试技巧

    1. console.log 跟前端调试相同,通过一步步打印相关变量进行代码调试 2. 使用Node.js内置的调试器 通过node debug xxx.js来进行调试: [root@~/wade/n ...

  8. 3分钟干货学会使用node-inspector调试NodeJS代码

    使用node-inspector调试NodeJS代码 任何一门完备的语言技术栈都少不了健壮的调试工具,对于NodeJS平台同样如此,笔者研究了几种调试NodeJS代码的方式,通过对比,还是觉得node ...

  9. Nodejs学习笔记(二)——Eclipse中运行调试Nodejs

    前篇<Nodejs学习笔记(一)——初识Nodejs>主要介绍了在搭建node环境过程中遇到的小问题以及搭建Eclipse开发Node环境的前提步骤.本篇主要介绍如何在Eclipse中运行 ...

随机推荐

  1. 高考志愿填报:java 软件 程序员 目前的就业现状

    大约在17年前,也就是2000年,学计算机专业的学生可以有大部分都进入本专业,并且就业非常容易.哪怕只会office套件,想找个工作也很简单.那时候学计算机就是最热门的行业. 那时候,搞Java的还是 ...

  2. CentOS yum 安装 PHP 5.6.24

    配置yum源 追加CentOS 6.5的epel及remi源. # rpm -Uvh http://ftp.iij.ad.jp/pub/linux/fedora/epel/6/x86_64/epel- ...

  3. mysql 列类型以及属性特点

    整形列: 一个字节有8个位,例如:int 类型的列存入数字1,00000000 00000000 00000000 00000001它就在最低位置上存入一个1,由此可见是极大的浪费资源,所以在建立列类 ...

  4. [leetcode-532-K-diff Pairs in an Array]

    Given an array of integers and an integer k, you need to find the number of unique k-diff pairs in t ...

  5. 14.什么是jsp动作

    JSP动作元素(action elements),动作元素为请求处理阶段提供信息.动作元素遵循XML元素的语法,有一个包含元素名的开始标签,可以有属性,可选的内容,与开始标签匹配的结束标签. 包含的类 ...

  6. createjs 小游戏开发实战

    [转载请注明出处] 紧接着上一篇文章createjs入门:http://www.cnblogs.com/beidan/p/7055422.html 这里来一篇小游戏实战篇. 游戏整体思路实现 1. 实 ...

  7. linux 常用 掌握要点

    1.查看正在执行的进程(Process) ps命令 Process Status 进程状态 语法: ps  [option]  [--help] -A  列出所有的行程 -w  显示加宽可以显示较多的 ...

  8. PHP机器学习库php-ml的简单测试和使用

    php-ml是一个使用PHP编写的机器学习库.虽然我们知道,python或者是C++提供了更多机器学习的库,但实际上,他们大多都略显复杂,配置起来让很多新手感到绝望.php-ml这个机器学习库虽然没有 ...

  9. 利用workbench将excel数据导入到MySQL中

    数据导入的方式(csv,txt之类) 在MySQL中,数据导入的方式有两种方式 通过第三方客户端导入(workbench) 通过mysql client 方式导入 通过mysql clinet的导入方 ...

  10. synchronized的作用

    一.同步方法 public synchronized void methodAAA(){ //-. } 锁定的是调用这个同步方法的对象 测试:a.不使用这个关键字修饰方法,两个线程调用同一个对象的这个 ...