1.先创建一个pipe 验证管道
nest g pi 文件名字
创建好之后的
2.安装验证器
npm i --save class-validator class-transformer
import {IsNotEmpty,IsString} from 'class-validator'
export class CreatePDto {
@IsNotEmpty()//验证是否为空
@IsString() //是否为字符串
name:string;
@IsNotEmpty()
age:number
}
3.controller 使用管道 和定义类型
4.实现验证transform
value 就是 前端传过来的数据 metaData 就是元数据 通过 metatype 可以去实例化这个类
实例化DTO
通过 validate 验证 DTO 返回一个promise 的错误信息 如果有错误抛出
5.注册全局DTO验证管道
跟自己写的效果基本类似