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 相关文章推荐
网页加载时页面显示进度条加载完成之后显示网页内容
Dec 23 Javascript
js实现图片在未加载完成前显示加载中字样
Sep 03 Javascript
关于编写性能高效的javascript事件的技术
Nov 28 Javascript
javascript实现table选中的行以指定颜色高亮显示的方法
May 13 Javascript
jquery弹出框插件jquery.ui.dialog用法分析
Aug 20 Javascript
Javascript 动态改变imput type属性
Nov 01 Javascript
JavaScript实现二分查找实例代码
Feb 22 Javascript
完美实现js焦点轮播效果(一)
Mar 07 Javascript
vue如何将v-for中的表格导出来
May 07 Javascript
webstorm和.vue中es6语法报错的解决方法
May 08 Javascript
发布一款npm包帮助理解npm的使用
Jan 03 Javascript
JavaScript小技巧带你提升你的代码技能
Sep 15 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代码
2010/08/08 PHP
php可生成缩略图的文件上传类实例
2014/12/17 PHP
一文掌握PHP Xdebug 本地与远程调试(小结)
2019/04/23 PHP
php 多继承的几种常见实现方法示例
2019/11/18 PHP
分享8款优秀的 jQuery 加载动画和进度条插件
2012/10/24 Javascript
jQuery源码分析之jQuery中的循环技巧详解
2014/09/06 Javascript
JavaScript 匿名函数和闭包介绍
2015/04/13 Javascript
javascript编写贪吃蛇游戏
2015/07/07 Javascript
jQuery跨域问题解决方案
2015/08/03 Javascript
javascript瀑布流式图片懒加载实例
2020/06/28 Javascript
javascript实现移动端上的触屏拖拽功能
2016/03/04 Javascript
JavaScript知识点总结(十一)之js中的Object类详解
2016/05/31 Javascript
js实现背景图自适应窗口大小
2017/01/10 Javascript
JS判断非空至少输入两个字符的简单实现方法
2017/06/23 Javascript
angular4 JavaScript内存溢出问题
2018/03/06 Javascript
JS实现纵向轮播图(初级版)
2020/01/18 Javascript
js+canvas实现转盘效果(两个版本)
2020/09/13 Javascript
javascript中call,apply,bind的区别详解
2020/12/11 Javascript
[57:31]DOTA2-DPC中国联赛 正赛 SAG vs CDEC BO3 第一场 2月1日
2021/03/11 DOTA
Python实现的矩阵类实例
2017/08/22 Python
TensorFlow 实战之实现卷积神经网络的实例讲解
2018/02/26 Python
python3.x实现base64加密和解密
2019/03/28 Python
pandas删除指定行详解
2019/04/04 Python
django 控制页面跳转的例子
2019/08/06 Python
Python语言编写智力问答小游戏功能
2020/10/13 Python
Python 实现二叉查找树的示例代码
2020/12/21 Python
SmartBuyGlasses中国:唯视良品(销售名牌太阳镜、墨镜和眼镜框)
2017/07/03 全球购物
森海塞尔美国官网:Sennheiser耳机与耳麦
2017/07/19 全球购物
外包公司软件测试工程师
2014/11/01 面试题
应届生求职信范文
2014/06/30 职场文书
财务会计实训报告
2014/11/05 职场文书
工程安全生产协议书
2014/11/21 职场文书
支行行长岗位职责
2015/02/15 职场文书
个人求职信格式范文
2015/03/20 职场文书
现场施工员岗位职责
2015/04/11 职场文书
豆瓣2021评分最高动画剧集-豆瓣评分最高的动画剧集2021
2022/03/18 日漫