我有一个应该是only accept integers的字段,因为我的后端不能接受浮点类型.当使用Yup.number().integer()
来实现这一点时,它适用于2、3、Yup.number().integer()
等整数.然而,当我输入一个像1.0这样的值时,YUP会将其视为整数而不是小数,而将does not throw视为验证错误.
我们可以将Yup.number().integer()
配置为将1.0视为小数吗?或者,我应该采取不同的方法来验证Yup中的整数值吗?如有任何见解或建议,我们将不胜感激.谢谢!
我try 对Number.isInteger使用test(),但不起作用
const integerValidation = (value) => {
if (!Number.isInteger(value)) {
return false;
}
return true;
};
const schema = Yup.object().shape({
yourIntegerField: Yup.number().test('integer', 'Please enter an integer value', integerValidation),
});