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 相关文章推荐
两种简单实现菜单高亮显示的JS类代码
Jun 27 Javascript
原生javaScript做得动态表格(注释写的很清楚)
Dec 29 Javascript
JQuery调用WebServices的方法和4个实例
May 06 Javascript
readonly和disabled属性的区别
Jul 26 Javascript
jquery地址栏链接与a标签链接匹配之特效代码总结
Aug 24 Javascript
JavaScript知识点总结(五)之Javascript中两个等于号(==)和三个等于号(===)的区别
May 31 Javascript
JS获取url参数、主域名的方法实例分析
Aug 03 Javascript
bootstrap-table组合表头的实现方法
Sep 07 Javascript
如何快速解决JS或Jquery ajax异步跨域的问题
Jan 08 jQuery
node 使用 async 控制并发的方法
May 07 Javascript
js实现简单的点名器随机色实例代码
Sep 20 Javascript
JavaScript实现简单计时器
Jun 22 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配置参数总结
2013/06/14 PHP
ThinkPHP 3.2 版本升级了哪些内容
2015/03/05 PHP
tp5框架内使用tp3.2分页的方法分析
2019/05/05 PHP
Thinkphp5.0框架视图view的循环标签用法示例
2019/10/12 PHP
jQuery 使用手册(三)
2009/09/23 Javascript
Javascript表格翻页效果实现思路及代码
2013/08/23 Javascript
zTree插件之单选下拉菜单实例代码
2013/11/07 Javascript
Node.js中的缓冲与流模块详细介绍
2015/02/11 Javascript
javascript使用正则表达式实现去掉空格之后的字符
2015/02/15 Javascript
JavaScript实现快速排序的方法
2015/07/31 Javascript
NodeJS创建基础应用并应用模板引擎
2016/04/12 NodeJs
jQuery获取cookie值及删除cookie用法实例
2016/04/15 Javascript
jQuery Easyui datagrid/treegrid 清空数据
2016/07/09 Javascript
动态JavaScript所造成一些你不知道的危害
2016/09/25 Javascript
AngularJS ng-template寄宿方式用法分析
2016/11/07 Javascript
JS HTML图片显示Canvas 压缩功能
2017/07/21 Javascript
微信小程序 swiper组件构建轮播图的实例
2017/09/20 Javascript
javaScript实现复选框全选反选事件详解
2020/11/20 Javascript
Angular实现的日程表功能【可添加及隐藏显示内容】
2017/12/27 Javascript
Vue中的slot使用插槽分发内容的方法
2018/03/01 Javascript
nodejs简单访问及操作mysql数据库的方法示例
2018/03/15 NodeJs
webpack4简单入门实例
2018/09/06 Javascript
JavaScript读取本地文件常用方法流程解析
2020/10/12 Javascript
vue动态设置路由权限的主要思路
2021/01/13 Vue.js
python解析json实例方法
2013/11/19 Python
完美解决Python 2.7不能正常使用pip install的问题
2018/06/12 Python
python与pycharm有何区别
2020/07/01 Python
几款Python编译器比较与推荐(小结)
2020/10/15 Python
Omio意大利:全欧洲低价大巴、火车和航班搜索和比价
2017/12/02 全球购物
省级优秀班集体申报材料
2014/05/25 职场文书
初三语文教学计划
2015/01/22 职场文书
活着观后感
2015/06/03 职场文书
庆七一晚会主持词
2015/06/30 职场文书
奖学金主要事迹范文
2015/11/04 职场文书
2016年七夕情人节宣传语
2015/11/25 职场文书
postgreSQL数据库基础知识介绍
2022/04/12 PostgreSQL