You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用npm run dev时Nodemon无法检测文件变更的问题排查

问题原因及解决方案

核心原因

Windows环境下,npm执行脚本时会对引号做特殊处理:你在package.json里用的单引号'src/**/*.ts',会被npm传递给执行环境时保留单引号,导致nodemon实际监听的是带单引号的字面路径(即'src/**/*.ts'),而非预期的src/**/*.ts。而直接在PowerShell里执行命令时,PowerShell会正确解析单引号作为字符串分隔符,所以nodemon能正常识别路径。

解决办法

方法1:替换单引号为转义的双引号

在package.json的scripts里,把单引号换成转义的双引号(JSON本身用双引号包裹,内部双引号需转义):

"scripts": {
  "dev": "npx nodemon --watch \"src/**/*.ts\" -e ts --exec ts-node --esm src/index.ts"
}

方法2:去掉引号(路径无空格时适用)

如果你的路径里没有空格,可直接去掉引号,npm和nodemon都能正确解析:

"scripts": {
  "dev": "npx nodemon --watch src/**/*.ts -e ts --exec ts-node --esm src/index.ts"
}

方法3:使用nodemon配置文件(更优雅)

创建nodemon.json文件,把监听规则写在配置里,彻底避免引号解析问题:

{
  "watch": ["src/**/*.ts"],
  "ext": "ts",
  "exec": "ts-node --esm src/index.ts"
}

然后修改package.json的scripts:

"scripts": {
  "dev": "npx nodemon"
}

内容的提问来源于stack exchange,提问作者Said Torres

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 04:27:07