Nest入门到精通

2022-07-17 00:26:12
2024-10-10 00:24:02

起步

js 复制代码
npm i -g @nestjs/cli

创建项目

js 复制代码
nest new project-name

创建 Module

modules文件下的user

language 复制代码
nest g module user modules

创建 Controller

language 复制代码
nest g controller user modules

创建 Provider

language 复制代码
nest g service user modules

直接生成一个CRUD模块的navigation,选择PEST API

shell 复制代码
 nest g resource navigation  modules

配置swagger

新建文件src/swagger/index.ts

language 复制代码
import { DocumentBuilder, SwaggerModule } from '@nestjs/swagger';

const swaggerOptions = new DocumentBuilder()
	.setTitle('小白龙博客接口文档')
	.setDescription('小白龙博客文档')
	.setVersion('1.0.0')
	.addBearerAuth()
	.build();

export function createSwagger(app) {
	const document = SwaggerModule.createDocument(app, swaggerOptions);
	SwaggerModule.setup('swagger-doc', app, document);
}

配置功能模块标签与接口名字

language 复制代码
import { LinksSetDto } from './dto/links.set.dto';
import { ApplyLinksService } from './apply-links.service';
import { ApiTags, ApiOperation } from '@nestjs/swagger';
import { Controller, Get, Post, Query, Body } from '@nestjs/common';

@ApiTags('申请友链')
@Controller('apply-links')
export class ApplyLinksController {
	constructor(private readonly applyLinksService: ApplyLinksService) {}

	@Get('/set')
	@ApiOperation({ summary: '创建申请友链' })
	set(@Query() params: LinksSetDto) {
		return this.applyLinksService.set(params);
	}

	@Get('/query')
	@ApiOperation({ summary: '获取申请友链列表' })
	query(@Query() params) {
		return this.applyLinksService.query(params);
	}

	@Post('/del')
	@ApiOperation({ summary: '删除{id}申请友链' })
	del(@Body() params) {
		return this.applyLinksService.del(params);
	}
}
目录

运营需要亿点资金维持,您的支持,是小白龙创作的动力!!!

昵称
留言
赞赏金额
暂无评论,欢迎留下你的评论