redux-form-validators
redux-form-validators copied to clipboard
[Question] Validate only if field is dirty
Hello,
I am using Final Form. I have an e-mail field that is optional.
How would you validate only if the user tried to enter a wrong e-mail? I have succeeded to do this but I didn`t like the solution:
import * as vld from 'redux-form-validators';
<Field name="email" label="E-mail de Contato" placeholder="Deixe seu e-mail" component={TextInputField} validate={emailIfNotEmpty} />
The custom validator code is like this:
const emailIfNotEmpty = (value, allValues, meta) => { if (meta.dirty) { return vld.email()(value); } }
Can you suggest a better approach?
Kind Regards, Mário
have you checked the conditional validations? You can check the args passed by if
and unless
. I think the third arg should be meta
with Final Form.
I tested right now and I'm just receiving values
and value
. The props
and name
parameters remain undefined
.