如何启用 NestJs swagger 4.x 插件

col*_*r-j 4 nestjs

你如何使用新的 swagger 插件?我的编译器选项中有它:

  "compilerOptions": {
    "plugins": ["@nestjs/swagger/plugin"]
  }
Run Code Online (Sandbox Code Playgroud)

nest start按照描述运行应用程序:https : //docs.nestjs.com/recipes/swagger#migration-to-40

然而,似乎没有自动魔法文档发生。

col*_*r-j 14

这是一个全局依赖与本地依赖冲突的问题,以及旧构建(设置为incremental模式)与新属性生成冲突的问题。做了以下事情来解决问题:

  • 如果 nest cli 是全局安装的,手动升级它:yarn global upgrade upgrade @nestjs/cli,或者使用 npm ( npm update -g @nestjs/cli)
  • 将本地服务巢升级到最新版本: nest update
  • 将以下内容添加到您的nest-cli.json:
  "compilerOptions": {
    "plugins": ["@nestjs/swagger/plugin"]
  }
Run Code Online (Sandbox Code Playgroud)
  • 删除您的本地 dist 文件夹(或进行纱线构建)
  • 使用 nest cli 命令(即nest startnest start:dev)启动服务器

  • 删除 /dist/ 文件夹并重新开始解决了我的问题,无论有没有手表标志 (4认同)
  • 到目前为止,只需要`"plugins": ["@nestjs/swagger"]`。 (3认同)
  • 请明确我们应该运行“nest start”来启动服务器。我实际上正在运行“npm run start:dev”(使用nodemon),但它不起作用。现在一切都OK了,谢谢! (2认同)
  • 我完成了所有步骤,使用了名为 *.dto.ts 的文件,但它仍然无法正常工作:/ (2认同)