Nodemon 简介、安装、使用和配置

本文介绍了nodemon这款工具,用于自动重启Node.js服务器以响应代码更改。讲解了全局和开发环境安装方法,以及如何通过命令行参数、package.json和nodemon.json进行配置,以优化代码监控和重启流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、nodemon官网

​https://nodemon.io/​

二、为什么要使用nodemon

  • 使用 node 启动一个服务,需要:
node server.js

修改了 server.js 文件,需要停止服务(ctrl + c),再次启动才会生效;
有了 nodemon,就不用频繁手动重启 server.js ,因为 nodemon 可以监视源码改动,并自动重启服务。这样我们只需要专注写代码逻辑,不需要过多关注服务。

三、安装

3.1. 全局安装

npm install -g nodemon

3.2. 开发环境安装

npm install nodemon --save-dev

3.3. 验证安装成功没有

nodemon -v

四、配置 nodemon

配置 nodemon 有三种配置方式:命令参数、package.json和nodemon.json

三种配置的优先级: nodemon.json > package.json > 命令参数;

4.1. 方式一:通过命令行参数配置 nodemon

  • --help,获取帮助;
nodemon --help

在这里插入图片描述

  • --config :设置指定的配置文件;
  • --ignore:设置无需监视的文件路径;
  • --exec :执行脚本
  • --watch : 设置要监视的文件和文件夹路径;
  • --ext : 设置监视文件的后缀扩展名;

默认情况下,​​nodemonwatching path(s): *.*​​所有项目文件,啥文件改动一下都要重启服务,其实没必要。

配置只监视 src 目录

nodemon --watch src server.js

配置监视文件的后缀扩展名

nodemon --ext js,json

上面使用的 --watch 参数,在这次--ext中并没有保存下来,监视的目录又变成默认的: *,所以说,命令配置临时用一下是可以的,常用的话,还是用配置文件香;

两个参数合并写法:

nodemon --watch src --ext js,json server.js

等价于配置文件:

{
  watch: ['src/'],
  ignore: [],
  script: 'server.js'
  options: {
    extensions: ['js', 'json'],
    exec: 'node'
  }
}

4.2. 方式二:package.json 配置

不想用命令行模式,可以在 package.json 中的 nodemonConfig 选项中配置

"nodemonConfig": {
  "watch":["src/"],
  "ext":"js json"
}

4.3. 方式三:nodemon.json 配置

单独配置 nodemon.json 文件,需要新建

{
    "watch": [
        "src/"
    ],
    "ext": "js json"
}

4.4. 完整的 nodemon.json 总结一下

{
  "restartable": "rs",
  "verbose": true,
  "watch": [
    "config/",
    "router/",
    "utils/",
    "views/",
    "app.ts",
    "index.ts"
  ],
  "ignore": [
    "test/*.spec.ts"
  ],
  "delay": "1000",
  "exec": "TS_NODE_PROJECT=tsconfig.server.json node --inspect -r ts-node/register ./app.ts",
  "ext": "ts ejs yml json"
}

nodemon.json 各项配置含义:

  • –restartable:设置重启命令,默认是 rs;
  • –verbose:是否输出重启的详细信息,布尔值,默认false;
  • –watch:监视文件或文件夹的路径,数组,每个参数都指某个路径;
  • –ignore:忽略监视的路径,默认忽略的是:.git,node_modules,bower–components,.sass-cache;
  • –delay:设置延迟时间;
  • –ext:指定默认文件扩展名,参数是字符串,空格分隔;
  • –script:指定监视的文件,一般指项目入口的 js 文件;
  • –exec:执行的命令;
  • –env :运行环境 development 是开发环境,production 是生产环境,pr–ot 是端口;
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值