@2amtech/crudx-swagger

中文文档
1.0.4发布于 2025/01/08TypeScriptCommonJS构建来源已验证近 30 天下载 2528

NestJs 软件包将 swagger 元数据应用到用 @ 2amtech/ crudx 软件包生成的路由中

中文使用文档
文档目录3 节
  1. 安装
  2. 配置
  3. 覆盖文件

@ 2amtech/crudx- swagger (英语)

雀巢JS通过它的软件包提供巨大的支持来滑翔 @nestjs/ swagger (英语)。 。 。 .

作为增强CRUD端点创建能力的图书馆 @2amtech/crudx 完成这个步骤 证明 @2amtech/crudx-swagger,用于为自动生成的端点CRUD端点添加相干元数据的一个手动一步骤设置模块.

使用此软件包,您将会在您所有 CRUD 路由的 swagger docs 中定义默认描述, 能够替换/ 扩展这些路由, 只需覆盖想要的路由, 并使用 @nestjs/swagger 作装饰.

安装

$ npm i @2amtech/crudx-swagger

配置

要配置软件包,只需设置 CrudxSwaggerRoutesFactory 页:1 routesFactory 选项

import { CrudConfigService } from "@2amtech/crudx";
import { NestFactory } from "@nestjs/core";
import { CrudxSwaggerRoutesFactory } from "@2amtech/crudx-swagger"

CrudConfigService.load({
  ...
  routesFactory: CrudxSwaggerRoutesFactory,
});

import { AppModule } from "./app/app.module";
...

然后,你必须创建一个 swagger 文档和应用程序本身, 通常这样做:

async function bootstrap() {
  const app = await NestFactory.create(AppModule);
  const globalPrefix = "api";
  app.setGlobalPrefix(globalPrefix);

  const port = process.env.PORT || 3000;

  const config = new DocumentBuilder().setTitle("Crudx Swagger").setDescription("Crudx-Swagger").setVersion("1.0").addTag("crudx-swagger").build();
  const document = SwaggerModule.createDocument(app, config);
  SwaggerModule.setup("api/docs", app, document);

  await app.listen(port);
}

bootstrap();

覆盖文件

如果您想要修改默认的道克或用自己的描述更新一些路由道克,则只需要覆盖路由,然后应用您的装饰符:

...

@Crud({
  model: {
    type: User,
  },
})
@Controller('/user')
export class UserController implements CrudController<User> {
  constructor(public service: UserService) {}

  get base(): CrudController<User> {
    return this;
  }

  @Override()
  @ApiResponse(<ApiResponseOptions>{
    status: 200,
    description: "Overriden description",
  })
  async getOne(req: CrudRequest): Promise<User> {
      return this.base.getOneBase(req);
  }
}

网络开发从未如此有趣
www.2am.tech 页面存档备份,存于互联网档案馆

版本与发布记录

@2amtech/crudx-swagger 共发布 4 个版本,首次发布于 2024/08/05;过去 12 个月发布了 0 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
1.0.4latest2025/01/081.8 年前
1.0.32025/01/081.8 年前
1.0.12024/08/222 年前
1.0.02024/08/052 年前

关于 @2amtech/crudx-swagger 的常见问题

@2amtech/crudx-swagger 是什么?

NestJs 软件包将 swagger 元数据应用到用 @ 2amtech/ crudx 软件包生成的路由中

如何安装 @2amtech/crudx-swagger?

在项目目录运行 npm install @2amtech/crudx-swagger,或使用 pnpm add / yarn add / bun add。

@2amtech/crudx-swagger 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@2amtech/crudx-swagger 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@2amtech/crudx-swagger 可以商用吗?

@2amtech/crudx-swagger 使用 未声明 许可。package.json 没有声明许可证。没有许可证的代码默认保留全部权利,商用前请联系作者或查看仓库中的 LICENSE 文件。以上为概括,不构成法律意见,请以许可原文为准。

@2amtech/crudx-swagger 的下载量有多少?

根据 npm 官方下载统计,@2amtech/crudx-swagger 在 2026/10/05 – 2026/11/03 这 30 天内被下载 2,528 次,日均约 84 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@2amtech/crudx-swagger 还在维护吗?

最新版本 1.0.4 发布于 2025/01/08(1.8 年前);至今共发布 4 个版本,其中过去 12 个月发布了 0 个;首次发布于 2024/08/05。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。