在开发或调试Node.js应用程序的时候,当你修改js文件后,总是要按下CTRL+C终止程序,然后再重新启动,即使是修改一点小小的参数,也总是要不断地重复这几个很烦人的操作。有没有办法做到当文件修改之后,Node.js自动重新启动(或重新加载文件)以节省时间呢?一开始我是想到用grunt的watch模块来监控文件变化,但后来在网上一查,原来我们想到的,别人早已想到,并且已经做得很好。Node Supervisor正是这样一个可以实现这种需求的Node.js模块。

根据Github上的说明,Node Supervisor原本是用于服务器上Node.js应用崩溃的时候,自己重新启动。当然它也可以监控你的项目的js(或CoffeeScript)文件变化,进而重启来方便我们调试应用程序。

安装方法(以全局模块安装):

复制代码代码如下:

npm install supervisor -g

假设你的Node.js程序主入口是app.js,那么只需要执行以下命令,即可开始监控文件变化。

复制代码代码如下:

supervisor app.js

Supervisor还支持多种参数,列举如下:

复制代码代码如下:

//要监控的文件夹或js文件,默认为'.'
-w|--watch <watchItems>

//要忽略监控的文件夹或js文件  
-i|--ignore <ignoreItems>

//监控文件变化的时间间隔(周期),默认为Node.js内置的时间
-p|--poll-interval <milliseconds>

//要监控的文件扩展名,默认为'node|js'
-e|--extensions <extensions>

//要执行的主应用程序,默认为'node'
-x|--exec <executable>

//开启debug模式(用--debug flag来启动node)
--debug

//安静模式,不显示DEBUG信息
-q|--quiet

例子:

复制代码代码如下:

supervisor myapp.js
supervisor -w py_scripts -e 'py' -x python myapp.py
supervisor -w lib, server.js, config.js, server.js

实现同样功能的类似产品还有Run.js和Nodeman,这两个我都没用过。但是从文档上来看,前者和Supervisor一样都是极简的5分钟就可以上手的那种,功能比Supervisor稍弱;后者的feature比较多,对应的文档就特别长,估计要研究透也得至少半个小时。选择哪一个,全看项目需求和个人喜好。

转载于:https://www.cnblogs.com/huojing/articles/6945460.html

node.js开发中使用Node Supervisor实现监测文件修改并自动重启应用(转)相关推荐

  1. 详解Node.js开发中不可或缺的7个库

    在Node.js开发中,选择合适的库对于提高开发效率和优化应用程序性能至关重要.本文将介绍七个备受关注的Node.js库,它们在各自的领域中展现了出色的功能和性能.这些库分别是:Config.Fetc ...

  2. Node js开发中的那些旮旮角角 第一部

    #前戏 上一周是我到现公司来最忙碌的(最有意思的)一周了,为什么这么说呢?因为项目中需要提供服务端对用户病人信息的一个汇总并以email的形式分享信息的接口,在几天的时间里调研处理一套实施方案.我们服 ...

  3. 10个Node.js 开发人员必须使用的IDE

    英文 | https://javascript.plainenglish.io/top-10-best-node-ide-every-developer-must-check-out-96a69950 ...

  4. 《Node.js开发实战》代码下载、简介与前言

    请下载代码评估:https://pan.baidu.com/s/1qYC3cVa   (密码: bba3). 内容简介 本书以实战开发为原则,以Node.js原生知识和框架实战为主线,详细介绍Node ...

  5. Node.js 开发技能图谱

    # Node.js 开发技能图谱 ## Node.js 语言环境搭建 - Node.js 安装(3m大法:nvm.npm.nrm) - Node.js 命令 - Node.js开发工具(推荐vscod ...

  6. Node.js web应用模块之Supervisor

    在开发或调试Node.js应用程序的时候,当你修改js文件后,总是要按下CTRL+C终止程序,然后再重新启动,即使是修改一点小小的参数,也 总是要不断地重复这几个很烦人的操作.这是因为Node.js ...

  7. 《node.js开发指南》读后感

    <node.js开发指南>这部只有180多页的书,我花了一个多月的业余时间算是粗略看完了.中间因为公司项目的加班,中断了几次.大大拖累进度,现在空出来时间,写一点自己的小小感想吧. 先从缺 ...

  8. 《Node.js开发指南》读书笔记

    继续学学node.js.翻开书首先被惊到=.=:作者BYVoid是清华大学2010级本科--同样是2010级本科,我真是无语凝噎,大学浪费了好多时间.不过过去的已经过去了,接下来好好努力提高才好,加油 ...

  9. 《Node.js开发指南》书评汇总

    刚查了下库存,发现订阅<Node.js开发指南>的读者大增,这是为什么呢?看了下近期本书在豆瓣的评论,口碑很好,现将豆瓣的书评汇总如下: ------------------------- ...

最新文章

  1. Goldengate 应用环境 mysql to oracle
  2. Vue + Element UI——侧边栏LOGO设计DEMO
  3. PostgreSQL学习笔记4之常用数据类型
  4. Redis-Bitmap介绍及使用
  5. Keras 中的循环神经网络 (RNN)
  6. win7升级Internet Explorer 11 先决条件更新
  7. 数据分析:SWOT分析法
  8. php imagick 取得psd缩略图,PHP中使用Imagick操作PSD文件实例
  9. 十分详细的React入门实例
  10. Codesys电子凸轮功能的设计与可视化仿真
  11. ios webview iphoneX 刘海屏适配
  12. 2021牛客练习赛90
  13. ECharts-中国省市地图
  14. 四川大学计算机专业调剂,四川大学计算机学院(软件学院)研究生调剂
  15. “简单证明GUID(全局唯一标识符)并不唯一”
  16. 【小技术】数据库显示“远程过程调用失败”怎么办?
  17. SpringBoot+Vue项目线上教学平台
  18. 推荐几个IDEA插件,Java开发者撸码神器。
  19. 直接建内网穿透服务器替换TeamViewer和向日葵可以实现远程操控
  20. 各个级别的教师资格证分别可以教什么阶段

热门文章

  1. 【jQuery笔记Part2】05-jQuery自定义动画
  2. Linux下安装composer报错 The openssl extension is missing / The zlib extension is not loaded等等
  3. 深入浅出 数据库索引
  4. 智能灯控制页面用HTML编写,一种基于STM32的智能灯控制系统的制作方法
  5. linux 系统终端字体改变,linux系统终端修改字体的方法
  6. 帧间差分法python代码_图像处理算法之帧间差分法
  7. 域名备案以及再次白嫖阿里云
  8. 6-3 断言与防御式编程
  9. 数据结构实验 7.兔子与樱花
  10. Python中的非可变型的数据类型(immutable type)