Nestjs-创建DTO文件以转换嵌套的json对象的正确方法是什么?

问题描述 投票:0回答:1

我正在尝试创建DTO文件以转换值并保存文档。

export class CreateProductDto {
  readonly pricing: {
    readonly list: number;
  } 
}

async create(@Body() createProductDto: CreateProductDto) {
  console.log(createProductDto);
  console.log(createProductDto.pricing.list); 
}
import * as mongoose from 'mongoose';

export const ProductSchema = new mongoose.Schema({
  pricing: {
    list: {
      type: Number,
    },
  },
});

但是princing.list的值为undefined

在NestJS中执行此操作的正确方法是什么?

javascript node.js nestjs dto
1个回答
0
投票

请通过此documentation在您的情况下,您的dto将是

import { IsNumber, IsObject } from 'class-validator';
import { Type } from 'class-transformer';
export class ListDto {
  @IsNumber()
  readonly list: number
}

export class CreateProductDto {
  @IsObject()
  @ValidateNested() @Type(() => ListDto)
  readonly pricing: ListDto
}

在您的main.ts中

import { ValidationPipe } from '@nestjs/common';
app.useGlobalPipes(new ValidationPipe());
© www.soinside.com 2019 - 2024. All rights reserved.