In the nest.js application on controller level I have to validate DTO.
I've faced with difficulty to check if item is not null (request should be rejected if any list item is null or undefined)
Code bellow demonstrates my configured verifications.
import { ArrayMinSize, IsArray } from 'class-validator'
export class ReminderPayload {
// ...
@IsArray()
@ArrayMinSize(1)
recipients: string[]
}
{
"recipients": [
null
]
}
string only (it should reject handling if object is in the array item position)?'class-validator' injected successfully, and it produces some validation results for my API.
You need to tell class-validator to run the validations on each item of the array. Change your payload DTO to the following:
import { ArrayMinSize, IsArray, IsString } from 'class-validator';
export class ReminderPayloadDto {
// ...
@IsArray()
@IsString({ each: true }) // "each" tells class-validator to run the validation on each item of the array
@ArrayMinSize(1)
recipients: string[];
}
Link to the docs on this.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With