如何在VS Code中避免保存未修改文件时触发Nodemon强制重启?
解决VS Code中Nodemon无修改保存仍重启的问题
核心原因
VS Code默认保存时会强制更新文件的修改时间戳,哪怕内容没变化,而Nodemon是通过监听文件时间戳变化触发重启的,因此会误触发。WebStorm仅在内容真的修改时才更新时间戳,所以不会出现这个问题。
解决方法
方法1:修改VS Code的保存行为
打开VS Code设置(快捷键Command + ,),搜索Files: Save Only If Modified选项并勾选。
这个设置会让VS Code仅在文件内容确实改变时执行保存操作,不会更新无修改文件的时间戳,Nodemon也就不会误重启。
方法2:配置Nodemon缩小监听范围
如果方法1不生效,可通过Nodemon配置优化监听逻辑:
- 在项目根目录创建
nodemon.json文件,写入以下内容:
{ "ignore": [".git", "node_modules/**", "*.log"], "watch": ["index.js"], "ext": "js" }
- 运行Nodemon时指定配置文件:
nodemon --config nodemon.json index.js
该配置会精准监听目标文件,同时忽略不会影响代码的无关文件变动。
方法3:启用VS Code自动保存
开启VS Code的自动保存功能(设置里搜索files.autoSave,选择afterDelay或onFocusChange),让VS Code自动在内容修改后保存,避免手动无意义保存触发Nodemon误重启。
内容的提问来源于stack exchange,提问作者Abdug'ani Toshmuhammedov
相关产品推荐
相关产品推荐

