NestJS防止在开发中重新加载服务器

时间:2020-04-23 10:20:59

标签: node.js nestjs

我有一条路由可以在 public 目录中创建一个新文件夹,该文件夹是由 app.useStaticAssets 服务的静态内容。

问题在于,即使我在 tsconfig.build.json tsconfig的 exclude 数组中添加了 public 目录.json ,当在 public 目录中删除或创建新文件夹时,我的服务器仍在重新加载开发中。

我想念什么吗?

更新 tsconfig.json

{
 "compilerOptions": {
    "module": "commonjs",
    "declaration": true,
    "removeComments": true,
    "noImplicitAny": true,
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "esModuleInterop": true,
    "target": "es2017",
    "sourceMap": true,
    "outDir": "./dist",
    "baseUrl": "./",
    "incremental": true
  },
  "exclude": ["node_modules", "dist", "public"]
}

我提到 public 文件夹位于 src 文件夹之外。它们在同一级别。

2 个答案:

答案 0 :(得分:1)

我能够重现此内容,发现这似乎是一个常见问题-> https://github.com/nestjs/nest/issues/3510

正如github问题中所建议的那样,添加<nav> <div class="nav-items"> <a href="/">Home</a> <a href="/gallery">Gallery</a> <img class="logo" src="https://upload.wikimedia.org/wikipedia/commons/a/ab/Android_O_Preview_Logo.png"> <a href="/help">Help</a> <a href="/contact">Contact</a> </div> </nav>作为解决方法似乎可以解决该问题:

include

答案 1 :(得分:0)

如果要完全完全禁用热重加载,请从start:dev脚本中删除--watch标志。

  1. 进入package.json
  2. 在“脚本”下找到“ start:dev”脚本
  3. 复制您的“ start:dev”脚本并重命名-我将其命名为start:dev-noreload 您的脚本应如下所示:

"start:dev-noreload": "npm run prebuild && npm run kill:dev-process && npm run build:docker-postgres && env ENV=DEV nest start"

  1. 使用

    运行您的应用

    npm run start:dev-noreload

为了恢复热装,只需按照通常的方式运行即可。 使用npm startnpm run start:dev