如何为Nodemon安装自动重启功能 – 用Node.js开发

发布时间:2023-05-16

一、为什么需要自动重启功能

在Node.js开发项目过程中,每次修改代码都需要手动重启服务器,十分繁琐而且容易忘记,影响效率。Nodemon是一款Node.js的开发工具,在检测到文件变化时会自动重启应用程序,大大提升了开发效率。

二、安装Nodemon

首先确保你的系统上已经安装了Node.js和npm,可以通过以下命令检查:

node -v
npm -v

接下来,使用npm安装Nodemon:

npm install -g nodemon

安装完成后,使用以下命令查看版本号以确认是否安装成功:

nodemon -v

三、使用Nodemon启动应用程序

使用Nodemon启动应用程序非常简单,只需要将原本使用node命令启动应用程序的命令行改为nodemon即可,例如:

node app.js

改为:

nodemon app.js

此时,每当应用程序代码发生变化,Nodemon会自动重启应用程序,不需要手动执行重启命令。

四、使用Nodemon监测文件变化

如果你需要让Nodemon监测特定文件夹下的所有文件变化而不是只监测应用程序的入口文件,可以使用以下命令:

nodemon --watch 文件夹路径 app.js

例如,如果你需要监测名为routes的文件夹下的所有文件变化,可以使用以下命令:

nodemon --watch routes app.js

此时,Nodemon会自动监测routes文件夹下的所有文件变化并重启应用程序。

五、使用Nodemon配置文件

除了命令行参数外,Nodemon还支持使用配置文件来配置应用程序的启动参数和监测规则。创建一个名为nodemon.json的文件,并在文件中添加以下代码:

{
  "verbose": true,
  "watch": [
    "public",
    "config"
  ],
  "execMap": {
    "js": "node --harmony"
  },
  "ignore": [
    "*.test.js",
    "fixtures/*"
  ],
  "delay": "2500",
  "env": {
    "NODE_ENV": "development"
  }
}

以上代码对应的配置说明如下:

  • verbose:启用详细日志输出。
  • watch:监测文件变化的文件夹列表。
  • execMap:指定执行某种类型文件时使用的命令。
  • ignore:指定忽略的文件列表或正则表达式。
  • delay:指定重启应用程序的延时时间。
  • env:设置环境变量。 在配置文件中添加了监测规则后,使用以下命令启动应用程序即可:
nodemon

Nodemon会自动读取当前目录下的nodemon.json配置文件并生效。