在我的package.json中,我有一个用于开发环境的启动脚本。它看起来像这样:
"scripts": {
"dev": "NODE_PATH=src nodemon --watch src/ --exec babel-node src/app.js"
}
当我击中npm run dev
一切正常时,babel 正在按应有的方式转换所有内容,nodemon 开始观看。我看到这个:
[nodemon] 1.11.0
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: /Users/Jonathan/Documents/swissnet/src/**/*
[nodemon] starting `babel-node src/app.js`
当我在 src/-folder 中保存文件时,nodemon 将重新启动服务器。但这是我的问题,它重新启动 2-3 次......每次我保存一个文件时,它看起来像这样:
[nodemon] restarting due to changes...
[nodemon] starting `babel-node src/app.js`
[nodemon] restarting due to changes...
[nodemon] starting `babel-node src/app.js`
[nodemon] restarting due to changes...
[nodemon] starting `babel-node src/app.js`
如果我输入“rs”,则 nodemon 按预期重新启动一次。
我不知道如何解决这个问题,甚至不知道在哪里寻找答案。我试过用谷歌搜索它。我一直在 github 上访问包的错误部分......(也许我只是在谷歌搜索上很烂)。
这是我为同一问题找到的唯一链接,但似乎没有答案:Nodemon 在使用 babel 时在保存时运行多次。
无论如何我尝试了他的脚本,NODE_PATH=src nodemon src --exec babel -w src/ --out-dir build/ --source-maps
但同样的事情发生了,重新启动两次或三次。
就像@Connorelsea 在上面链接中提供的答案的评论部分所说,如果我添加--delay 2.5
它只重新启动一次。
我在想也许当我在一个监视的文件中点击保存时,nodemon 会立即重新启动并且 babel 开始编译。当 babel 完成后,它会保存一堆 om 转译文件,并且 nodemon 再次重新启动,因为对 src/-文件夹进行了更改。但我不知道如何调试它。
希望你们能帮助我!
**** 编辑 ****
刚刚找到这个https://github.com/remy/nodemon/issues/508但他们唯一的解决方案是“升级 nodemon”。我目前确实有最新的 1.11.0。