更改文件时如何使用 nodemon 在 npm 脚本上重新启动多个服务器文件
Posted
技术标签:
【中文标题】更改文件时如何使用 nodemon 在 npm 脚本上重新启动多个服务器文件【英文标题】:How to restart multiple server files on npm script using nodemon when changing the files 【发布时间】:2017-05-23 21:29:32 【问题描述】:当我更改文件夹上的文件时,我想在 npm 脚本中使用 nodemon 重新启动两个服务器文件
这是我的 npm 脚本
"scripts":
"test": "echo \"Error: no test specified\" && exit 1",
"start":
"nodemon app/api/server.js && nodemon app/backend/server.js"
,
【问题讨论】:
【参考方案1】:我终于通过使用并发插件
做到了我的 npm 启动脚本将是
"start": "concurrently \"nodemon app/backend/server.js\" \"nodemon app/api/server.js\" "
【讨论】:
【参考方案2】:您可以使用 nodemon 的配置文件 nodemon.json
指定additional settings。将此文件放在应用程序的根目录中。
nodemon.json
"restartable": "rs",
"ignore": [
".git",
"node_modules/**/node_modules"
],
"verbose": true,
"watch": [
"app/api/server.js", //list of files, you want to watch for changes
"app/backend/server.js"
// "app/api/", if you want to watch for all files in sub directory
],
"ext": "js json"
进行这些更改后,您的 package.json
应该看起来像
"scripts":
"test": "echo \"Error: no test specified\" && exit 1",
"start":
"nodemon app/api/server.js" // file list was added in nodemon.json
,
【讨论】:
我在本地安装了nodemon。 nodemon 配置文件是否也在本地工作? 是的,它会的。nodemon supports local and global configuration files.
更多here。但文件名必须是nodemon.json
当我更改后端文件夹或 api 文件夹中的任何文件时,它会重新启动 api 文件夹的 server.js 文件,但我也想重新启动后端文件夹的 server.js。 watch 键将仅监视正在更改的文件或指向正在重新启动的服务器文件?
watch
将允许您设置要监视更改并重新启动服务器的文件列表。即使您想监视更改并重新启动后端文件夹,这仍然是文件更改。不是吗? nodemon 会将其作为正常的文件更改处理并重新启动 backendserver.js。在这种情况下它将重新启动
我还有一个疑问。您正在声明 nodemon.json 文件,但您没有在 package.json 文件中的任何地方提及。那会自动取 nodemon.json 吗?【参考方案3】:
这是您的start
脚本在package.json
文件中的外观:
"start": "nodemon app/api/server.js app/backend/server.js"
【讨论】:
以上是关于更改文件时如何使用 nodemon 在 npm 脚本上重新启动多个服务器文件的主要内容,如果未能解决你的问题,请参考以下文章