Nodemon 配置

361 阅读2分钟

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

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

1. 命令行参数形式(全局)

// 执行如下命令:
nodemon -h

image.png

语法:Usage: nodemon [options] [script.js] [args]

--config :设置指定的配置文件;

--ext : 设置监视文件的后缀扩展名;

--exec :执行脚本

--watch : 设置要监视的文件和文件夹路径;

--ignore :设置无需监视的文件路径;

1) 参数:--watch,监控的文件或文件夹路径;

watch 可以监控多个目录,默认情况下,​`​nodemon 会 watching path(s) *.* ​`​ 

可以指定路径,使用  --watch ,如:只监视 src 目录;
nodemon --watch ./src xxx.js

2)参数:--ext ,设置监视文件的扩展名;

可以设置多个扩展名,如:监视 “.js 和 .json” ,不加点,逗号隔开;
nodemon --watch src --ext js,json xxx.js
等价于配置文件:

上述配置等价于:

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

2. package.json 配置

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

"nodemonConfig":{
    "watch":["src/"],
    "ext":"js ts",
    "ignore": [
      "src/public"
    ],
    "exec": "./node_modules/.bin/ts-node -r tsconfig-paths/register ./src"
}
// exec指定nodemon启动的执行程序命令,会执行./src下面的 index.js,index.ts文件等
// `-r`表示 --require xxx 预加载xxx

3. nodemon.json 配置

// 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 是端口;

修改package.json中的 nodemon 命令配置使用 --config 选项;

"start":"nodemon --config nodemon.json"