我已经定义了一个 DTO 来验证和转换传入的查询参数。
export class ScrollingDto {
@ApiPropertyOptional({
description: 'Number of items to skip',
default: 0,
nullable: true
})
@IsOptional()
@Type(() => Number)
@IsInt()
skip?: number;
@ApiPropertyOptional({
description: 'Number of items to take',
example: 20,
nullable: true
})
@IsOptional()
@Type(() => Number)
@IsInt()
take?: number;
}
我已经在main.ts
.
app.useGlobalPipes(new ValidationPipe({ transform: true }));
但它返回错误请求错误 -skip must be an integer number
使用此查询:
/api/blog/search?skip=0
控制器
@Controller('blog')
export class BlogController {
constructor() {}
@Get('search')
searchBlogs(@Query() query: ScrollingDto) {
...
}
}
我不确定我在这里做错了什么。希望能在这方面得到任何帮助。
更新
ScrollingDTO
是从作为节点模块安装的第三方库导入的。如果我只是将课程带入我的应用程序,那么它就可以工作。