我正在使用input type=number
和验证它。
我想做的是:
- 如果值不是数字-显示错误
only numbers allowed
- 如果输入为空-显示错误
value is required
yup.object().shape({ fieldName: yup.number().typeError("only numbers allowed").required("value required").min(0) })
但它总是只返回typerror
我正在使用input type=number
和验证它。
我想做的是:
only numbers allowed
value is required
yup.object().shape({ fieldName: yup.number().typeError("only numbers allowed").required("value required").min(0) })
但它总是只返回typerror
2条答案
按热度按时间njthzxwz1#
您正在尝试验证输入字段或type = number,如果传递空字符串,则会产生错误。Yup验证是主动检查值是否是有效的JavaScript数字,空值或非数字字符串不符合此标准。
1.使用yup.mixed()允许数字和空值
1.使用测试方法定义自定义验证规则
下面是修改后的代码:
lkaoscv72#