解决NestJs运行nest start --watch无限监听 dist 并重复生成的问题

环境

项目是 monorepo 结构,nestjs 项目只是其中一个 sub package

{
  "@nestjs/cli": "^9.1.9",
  "@nestjs/schematics": "^9.0.4",
  "@nestjs/testing": "^9.2.1",
  "@types/express": "^4.17.16",
  "@types/node": "18.11.18",
  "@types/supertest": "^2.0.12",
  "source-map-support": "^0.5.21",
  "supertest": "^6.3.3",
  "ts-loader": "^9.4.2",
  "ts-node": "^10.9.1",
  "tsconfig-paths": "4.1.2",
  "typescript": "^4.9.5"
}

症状

运行 npm run start:dev 后无限监听嵌套生成 dist 目录

官方github issue也有一个类似的问题,不过他的解决方法对我的不起作用

注意:该问题出现原因不太明确,我另外一个项目就没有出现这样的问题

解决办法

  1. tsconfig.json 添加 exclude
        "exclude": ["./dist"]
    
  2. start:dev 脚本命令指定 tsconfig.json (monorepo 才需要)
         "start:dev": "nest start --watch -p ./tsconfig.json",
    

在我这个项目中上述步骤缺一不可。

评论

0 / 800
全部评论()