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


Posted in Javascript onMarch 26, 2019

如果你有 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使用supervisor进行开发中调试的方法

总结

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

Javascript 相关文章推荐
jquery实现的元素的left增加N像素 鼠标移开会慢慢的移动到原来的位置
Mar 21 Javascript
新增加的内容是如何将div的scrollbar自动移动最下面
Jan 02 Javascript
jquery动态改变form属性提交表单
Jun 03 Javascript
浅谈javascript中call()、apply()、bind()的用法
Apr 20 Javascript
jquery显示隐藏元素的实现代码
May 19 Javascript
javascript封装addLoadEvent实现页面同时加载执行多个函数的方法
Jul 25 Javascript
JQuery学习总结【一】
Dec 01 Javascript
JavaScript用构造函数如何获取变量的类型名
Dec 23 Javascript
浅析vue中常见循环遍历指令的使用 v-for
Apr 18 Javascript
详解Vue基于vue-quill-editor富文本编辑器使用心得
Jan 03 Javascript
命令行批量截图Node脚本示例代码
Jan 25 Javascript
浅谈vue使用axios的回调函数中this不指向vue实例,为undefined
Sep 21 Javascript
详解vue在项目中使用百度地图
Mar 26 #Javascript
jQuery实现动态添加和删除input框实例代码
Mar 26 #jQuery
vue进入页面时滚动条始终在底部代码实例
Mar 26 #Javascript
详解原生JS动态添加和删除类
Mar 26 #Javascript
Vue项目部署的实现(阿里云+Nginx代理+PM2)
Mar 26 #Javascript
监听element-ui table滚动事件的方法
Mar 26 #Javascript
JavaScript的级联函数用法简单示例【链式调用】
Mar 26 #Javascript
You might like
PHP中的extract的作用分析
2008/04/09 PHP
PHP使用flock实现文件加锁的方法
2015/07/01 PHP
简单介绍PHP非阻塞模式
2016/03/03 PHP
浅谈PHP的exec()函数无返回值排查方法(必看)
2017/03/31 PHP
Laravel中任务调度console使用方法小结
2017/05/07 PHP
再谈javascript图片预加载技术(详细演示)
2011/03/12 Javascript
Javascript 八进制转义字符(8进制)
2011/04/08 Javascript
js中document.getElementByid、document.all和document.layers区分介绍
2011/12/08 Javascript
关于JAVASCRIPT urldecode URL解码的问题
2012/01/08 Javascript
读取input:file的路径并显示本地图片的方法
2013/09/23 Javascript
前台js对象在后台转化java对象的问题探讨
2013/12/20 Javascript
JS数组的常见用法实例
2015/02/10 Javascript
JavaScript中return false的用法
2015/03/12 Javascript
javascript操作表格排序实例分析
2015/05/06 Javascript
详解MVC如何使用开源分页插件(shenniu.pager.js)
2016/12/16 Javascript
javascript中神奇的 Date对象小结
2017/10/12 Javascript
vue2.0 常用的 UI 库实例讲解
2017/12/12 Javascript
小程序显示弹窗时禁止下层的内容滚动实现方法
2019/03/20 Javascript
详解JavaScript之ES5的继承
2020/07/08 Javascript
java直接调用python脚本的例子
2014/02/16 Python
在Python中处理列表之reverse()方法的使用教程
2015/05/21 Python
Python 基于Twisted框架的文件夹网络传输源码
2016/08/28 Python
python使用两种发邮件的方式smtp和outlook示例
2017/06/02 Python
解决pyinstaller打包exe文件出现命令窗口一闪而过的问题
2018/10/31 Python
pytorch下使用LSTM神经网络写诗实例
2020/01/14 Python
对python中 math模块下 atan 和 atan2的区别详解
2020/01/17 Python
CSS3 实现穿梭星空动画
2020/11/13 HTML / CSS
工作分析计划书
2014/04/30 职场文书
2014年出纳工作总结与计划
2014/12/09 职场文书
教师节寄语2015
2015/03/23 职场文书
活动费用申请报告
2015/05/15 职场文书
2015年小学教师培训工作总结
2015/07/21 职场文书
学习杨善洲同志先进事迹心得体会
2016/01/23 职场文书
2016年社区国庆节活动总结
2016/04/01 职场文书
Redis调用Lua脚本及使用场景快速掌握
2022/03/16 Redis
SQL解决未能删除约束问题drop constraint
2022/05/30 SQL Server