Привет! У меня есть вопрос о классе-валидаторе
Мой клиент запросит несколько чисел, и мне нужно сравнить значения друг с другом.
Мне нужен код, подобный приведенному ниже.
const validator: SomeValidator = new SomeValidator;
validator.first = 1000;
validator.second = 2000; // this will be greater than validator.first
validator.third = 3000; // this will be greater than validator.second
И я попробовал ввести переменную в валидатор @Min (), как показано ниже
import { IsInt, Min } from 'class-validator';
class SomeValidator {
@IsInt()
@Min(0)
public first: number;
@IsInt()
@Min(this.first) // it occurs TS7017
public second: number;
@IsInt()
@Min(this.second) // it occurs TS7017
public third: number;
}
И я получил TS7017 Ошибка .
TS7017: Element implicitly has an 'any' type because type 'typeof globalThis' has no index signature.
Есть ли идеальный способ обработки это?
Я знаю, что есть простой способ, как показано ниже, но I sh есть какой-то способ использования валидатора класса.
if ((first > second) || (second > third)) {
res.status(400).json({
message: 'validation failed',
});
return next(new Error('some error'));