0.3.0 • Published 3 years ago
@yapyeeqiang/react-validator v0.3.0
React Validator
Steps to integrate Validator
- Define form schema
import * as Yup from "yup";
const schema = Yup.object({
email: Yup.string().email().required(),
password: Yup.string().required(),
});
- Initialize the useValidation hook
import { useValidation } from "./hooks/validation";
const { fields, errors, useField, validateForm } = useValidation(schema);
Definitions:
fields
- Form inputs value objecterrors
- Errors detected when submitting the formuseField
- Method that defines a form fieldvalidateForm
- Method that checks if validation passed
- Define form fields
// Format: <KEY>field, set<KEY>Field = useField("<KEY>")
const { emailField, setEmailField } = useField("email");
- Define custom form submit action
const submitForm = () => {
const isFormValid = validateForm();
if (isFormValid) {
// Do something (API call, etc.)
}
};
- Use custom FormField component
For example, let's define a email field:
<FormField
value={emailField}
setValue={setEmailField}
error={errors.email}
labelText="Email"
fieldType="email"
inputType="email"
/>