Я пытаюсь создать свои ValidationSchemas, используя TS, React, чтобы использовать их в форме Formik.
У меня есть несколько схем проверки, которым я должен соответствовать в своем модуле, поэтому я подумал о создании перечисления, чтобы их можно было легко использовать повторно.
В файле TS:
import * as Yup from "yup";
export const ValidationSchema {
AddUserSchema = Yup.object().shape({
username: Yup.string('Provide a username').required('Username is required'),
email: Yup.string().email('Provide a valid email address'),
password: Yup.string('Provide a password').required('Password is required'),
confirmPassword: Yup.string('Provide your password again')
.required('Password confirmation is required')
.oneOf([Yup.ref('password')], 'Passwords do not match'),
group: Yup.string('Please select a group').required('Group is required')
}),
EditUserSchema = Yup.object().shape({
username: Yup.string('Provide a username').required('Username is required'),
email: Yup.string().email('Provide a valid email address'),
group: Yup.string('Please select a group').required('Group is required')
}),
EditPasswordSchema = Yup.object().shape({
password: Yup.string('Provide a password').required('Password is required'),
confirmPassword: Yup.string('Provide your password again')
.required('Password confirmation is required')
.oneOf([Yup.ref('password')], 'Passwords do not match'),
}),
}
Но я получаю ошибки в каждой Yup.String, которые говорят:
Expected 0 arguments, but got 1.ts(2554)
const string: Yup.StringSchemaConstructor
() => Yup.StringSchema
Я пытаюсь найти ссылку на типы Yup, но безуспешно. В чем здесь проблема. Мне нужно передать аргумент Yup, и он говорит, что ожидается 0. Это не имеет смысла для меня. Спасибо за ваше время!