Node.js使用supervisor进行开发中调试的方法

 更新时间:2019年03月26日 17:12:35   作者:爱死费崇政  
今天小编就为大家分享一篇关于Node.js使用supervisor进行开发中调试的方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

如果你有 PHP 开发经验,会习惯在修改 PHP 脚本直接刷新浏览器以查看结果,而你 在开发 Node.js 实现的 HTTP 应用时会发现,无论你修改了代码的哪一个部分,都必须终止Node.js然后重新运行。

这是因为 Node.js 只有在第一次引用到某一部分时才会去解析 本文件,以后都会直接访问内存,避免重复载入,而 PHP 则是重新读取并解析脚本(如果没有专门的优化配置)。

在开发Node.js实现HTTP应用时会发现,无论你修改了代码的哪一部分,都必须终止Node.js再重新运行才会奏效。这是因为Node.js只有在第一次引用到某部分时才会去解析脚本文件,以后都会直接访问内存,避免重复载入。

Node.js的这种设计虽然有利于提高性能,却不利于开发调试,因 为我们在开发过程中总是希望修改之后立即看到结果,而不是每次都要终止并重新启动。

supervisor 可以帮助你实现这个功能,它会监视你对代码的改动,并自动重动 Node.js。

使用方法很简单,首先使用 npm 安装 supervisor:

$ npm install -g supervisor

如果使用的是 Linux 或 Mac,可以使用 sudo npm install -g supervisor来安装。

接下来,使用 supervisor动 app.js: $ supervisor app.js
DEBUG: Running node-supervisor with
DEBUG: program ‘app.js'
DEBUG: –watch ‘.'
DEBUG: –extensions ‘node|js'
DEBUG: –exec ‘node'
DEBUG: Starting child process with ‘node app.js'
DEBUG: Watching directory ‘/home/byvoid/.' for changes. HTTP server is listening at port 3000. 代码被改动时,运行本会被重新启动。在终端中显示的结果如下:
DEBUG: crashing child
DEBUG: Starting child process with ‘node app.js'
HTTP server is listening at port 3000.

supervisor 这个小工具可以解决开发中的调试问题。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接

相关文章

  • Node.js事件的正确使用方法

    Node.js事件的正确使用方法

    这篇文章主要给大家介绍了关于Node.js事件的正确使用方法,文中通过示例代码介绍的非常详细,对大家学习或者使用Node.js具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-04-04
  • 详解Node.js 中使用 ECDSA 签名遇到的坑

    详解Node.js 中使用 ECDSA 签名遇到的坑

    这篇文章主要介绍了详解Node.js 中使用 ECDSA 签名遇到的坑,主要是使用 Node.js 的 Crypto 模块无法校验网络传输过来的签名结果,感兴趣的小伙伴们可以参考一下
    2018-11-11
  • webpack打包nodejs项目的方法

    webpack打包nodejs项目的方法

    这篇文章主要介绍了webpack打包nodejs项目,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-09-09
  • 详解nodejs中exports和module.exports的区别

    详解nodejs中exports和module.exports的区别

    本文主要介绍了exports 和 module.exports 的区别。具有很好的参考价值,下面跟着小编一起来看下吧
    2017-02-02
  • Cli Todo命令行todo工具使用演示

    Cli Todo命令行todo工具使用演示

    这篇文章主要为大家介绍了Cli Todo命令行todo工具使用演示示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08
  • Node.js全局对象Global的实现

    Node.js全局对象Global的实现

    在Nodejs下全局变量和全局函数都是可以使用global来访问到的,本文主要介绍了Node.js全局对象Global的实现,具有一定的参考价值,感兴趣的可以了解一下
    2023-12-12
  • node.js基于express使用websocket的方法

    node.js基于express使用websocket的方法

    这篇文章主要介绍了node.js基于express使用websocket的方法,结合实例形式分析了node.js基于express调用websocket相关设置与使用操作技巧,需要的朋友可以参考下
    2017-11-11
  • nodejs切换版本使用最新教程(不需要卸载重装)

    nodejs切换版本使用最新教程(不需要卸载重装)

    有时候需要运行不同的项目,node版本不一致会导致不少问题,特别是最新版本对应的一些插件,由于语法等原因导致不一定兼容低版本,这样运行低版本环境的项目的时候很多坑,这篇文章主要给大家介绍了关于nodejs切换版本使用(不需要卸载重装)的相关资料,需要的朋友可以参考下
    2022-11-11
  • NodeJs环境中NODE_ENV介绍和设置方法

    NodeJs环境中NODE_ENV介绍和设置方法

    这篇文章主要给大家介绍了关于NodeJs环境中NODE_ENV介绍和设置的相关资料,NODE_ENV其实就是环境变量之一,用于设置nodejs当前的运行环境,需要的朋友可以参考下
    2024-07-07
  • 一个简单的node.js界面实现方法

    一个简单的node.js界面实现方法

    今天小编就为大家分享一篇一个简单的node.js界面实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06

最新评论