如何在Yup Schema中实现0-9数字需添加尾随0的校验?
实现方案
你可以通过Yup的test()方法添加自定义校验规则来实现这个需求,具体修改后的Schema如下:
const ticketVSchema = yup.object({ team: yup .number() .required('The number is required') .test( 'trailing-zero-check', '请添加尾随0', (value) => { // 若数值在0-9范围内则触发错误,否则校验通过 return !(value >= 0 && value <= 9); } ) });
逻辑说明
test()是Yup提供的自定义校验API,三个参数分别是:校验标识(自定义命名即可)、错误提示文案、校验函数。- 校验函数中,判断输入值是否处于
0-9区间:如果是则返回false,触发错误提示;其他情况返回true,校验通过。 - 由于前面已经通过
number()校验确保了输入是数字类型,无需额外处理非数字的情况。
内容的提问来源于stack exchange,提问作者userMod2
相关产品推荐
相关产品推荐

