Performing client-side validation
In this section, we’ll update the CustomerForm
and AppointmentForm
components so that they alert the user to any issues with the text they’ve entered. For example, if they enter non-digit characters into the phone number field, the application will display an error.
We’ll listen for the DOM’s blur
event on each field to take the current field value and run our validation rules on it.
Any validation errors will be stored as strings, such as First name is required
, within a validationErrors
state variable. Each field has a key in this object. An undefined value (or absence of a value) represents no validation error, and a string value represents an error. Here’s an example:
{ firstName: "First name is required", lastName: undefined, phoneNumber: "Phone number must contain only numbers, spaces, and any of the following: + - ( ) ." }
This error is rendered...