配置 nodemon 有三种配置方式:命令参数
、package.json
、nodemon.json
;
三种配置的优先级: nodemon.json > package.json > 命令参数
;
1. 命令行参数形式(全局)
// 执行如下命令:
nodemon -h
语法: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"