Уровень проверки поля в форме избыточности не принимает функции в действующей валидации
Следуя этому примеру:
https://redux-form.com/7.1.1/examples/fieldlevelvalidation/
валидатором являются:
const maxLength = max => value =>
value && value.length > max ? `Must be ${max} characters or less` : undefined
const maxLength15 = maxLength(15)
для поля имени пользователя:
<Field
name="username"
type="text"
component={renderField}
label="Username"
validate={[required, maxLength15, minLength2]}
warn={alphaNumeric}
/>
если я изменяю в валидации, maxLength15 для maxLength(15) не работает:
validate = {[обязательно, maxLength(15),, minLength2 ]}
почему мне нужно создать другую функцию "maxLength15" для проверки работоспособности, потому что "maxLength(15)" не выдает ошибки.
1 ответ
Да, в основном вам нужно создать функцию проверки вне вашего render()
метод, потому что каждый раз при визуализации формы будет создана новая функция.
Документы утверждают: Note: if the validate prop changes the field will be re-registered.
Таким образом, вы можете увидеть в консоли, что встроенные функции вызывают поле UNREGISTER_FIELD
а потом REGISTER_FIELD
снова.