wire.validate
Validate data entered or selected by users using the wire.validate
method. The method will return null
if the validation was successful. It will return an error message if it was not.
Parameters
Name
Description
value
The value to be validated.
config
The configuration for the validation.
Config Properties
Use the following properties on the second parameter config
to configure the validation.
Name
Description
type
The type of validation to be performed. See valid values below.
error
Error message to be returned if the validation fails.
required
Determines whether the value
passed into the validate
method is required.
Validation Types
The following details the valid values of the type configuration property along with the additional configuration for each.
Number
Use the number
type to be sure a value is a valid number.
// returns null
const error = wire.validate(10, {
type: "number"
});
Use gt
with the number
type to be sure a value is greater than a specific value.
// returns value in error
const error = wire.validate(10, {
type: "number",
gt: 20
error: "Please enter a number greater than 20"
});
Value
Use the value
type to verify that a value is within a list of values
.
// returns null
const error = wire.validate("Y", {
type: "value",
values: [ "Y", "N" ]
});
Use case
with the value
type to specify whether the check against the values
list should be case sensitive. The case
condition defaults to false
.
// returns default error message for 'value' type
const error = wire.validate("y", {
type: "value",
case: true,
values: [ "Y", "N" ]
});
Date
Use the date
type to verify that a value is a valid date.
// returns null
const error = wire.validate("01-15-1986", {
type: "date"
});
Phone Number
Use the phone
type to verify a value is a valid phone number.
// returns null
const error = wire.validate("201-555-1212", {
type: "phone"
});
Email Address
Use the email
type to verify that a value is a valid email address.
// returns null
const error = wire.validate("[email protected]", {
type: "email"
});
Regular Expression
Use the regex
type to verify that a value meets a regular expression condition. Set the expression into the exp
property.
The following checks for a valid phone number.
// returns null
const error = wire.validate("201-555-1212", {
type: "regex",
exp: "^\\(?([0-9]{3})\\)?[-. ]?([0-9]{3})[-. ]?([0-9]{4})$"
});
Custom
When all else fails, use the custom
type to validate a value using a custom function. Use the validate
property to define the custom function. This function takes the same parameters as the validate
function itself and should return the same error if the validation is not successful.
The following uses the moment.js library to do a custom date validation.
// returns null
const error = wire.validate("011586", {
type: "custom"
validate: (value, config) => {
if(!moment(value, 'MMDDYY', true).isValid())
return "Must be in format 'mmddyy' (i.e. 081587)";
}
});
Value
When using the custom
validation type, the value passed in can also be an object.
const data = {date: "011586", checkMe: false };
const error = wire.validate(data, {
type: "custom"
validate: (value, config) => {
if(value.checkMe && !moment(value.date, 'MMDDYY', true).isValid())
return "Must be in format 'mmddyy' (i.e. 081587)";
}
});
Last updated
Was this helpful?