Не получается текстовое поле сообщения в swagger js - PullRequest
0 голосов
/ 10 июля 2020

введите здесь описание изображения

Я добавил приведенный ниже код в main.ts

import {NestFactory} from '@ nestjs / core';

импорт {SwaggerModule, DocumentBuilder} из '@ nestjs / swagger'

импорт {AppModule} из './app.module';

asyn c функция bootstrap ( ) {

const app = await NestFactory.create (AppModule);

const options = new DocumentBuilder ()

.setTitle('My API')

.setDescription('API description')

.setVersion('1.0')

.build();

const document = SwaggerModule.createDocument (app, options);

SwaggerModule.setup ('api', app, document);

await app.listen (3000);

} bootstrap ();

// контроллер

@ Post ()

addProduct (

@Body('title') title:string,
@Body('price') price:number,

): любой {

const idFromService=this.productserive.addNewProduct(title,price);

return idFromService;

}

// productservice

экспортный класс ProductService {

products: Product [] = [];

addNewProduct(title:string,price:number){

    const id=uId();

    const newproduct=new Product(id,title,price);

    this.products.push(newproduct);

    return {title,price};

}

}

1 Ответ

0 голосов
/ 03 сентября 2020

// 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;
    }
...