Не получается текстовое поле сообщения в swagger js
введите описание изображения здесь
Я добавил приведенный ниже код в main.ts
импортировать { NestFactory } из '@nestjs/core';
импортировать {SwaggerModule,DocumentBuilder} из '@nestjs/swagger'
импортировать { AppModule } из './app.module';
async function bootstrap () {
const app = ожидание NestFactory.create (AppModule);
const options = новый DocumentBuilder ()
.setTitle('My API')
.setDescription('API description')
.setVersion('1.0')
.build();
const document = SwaggerModule.createDocument (приложение, параметры);
SwaggerModule.setup('api', приложение, документ);
ждать app.listen (3000);
}bootstrap ();
// контроллер
@Почта()
addProduct (
@Body('title') title:string,
@Body('price') price:number,
):любой{
const idFromService=this.productserive.addNewProduct(title,price);
return idFromService;
}
// productservice
экспортный класс ProductService {
продукты: Продукт []=[];
addNewProduct(title:string,price:number){
const id=uId();
const newproduct=new Product(id,title,price);
this.products.push(newproduct);
return {title,price};
}
}
1 ответ
// create a separate dto
import { ApiProperty } from '@nestjs/swagger';
export class TestDto {
@ApiProperty()
readonly title: string
@ApiProperty()
readonly price: number
}
// use it in your controller
@Post()
addProduct(@Body() TestDto:TestDto): any {
return;
}