我有一个字段应该只接受整数,因为我的后端不能接受浮点类型。当使用
Yup.number().integer()
来实现此目的时,它适用于 2、3、100 等整数。但是,当我输入像 1.0 这样的值时,是的,它会将其视为整数而不是小数,并且 不会抛出验证错误。
我们可以配置
Yup.number().integer()
将 1.0 视为小数吗?或者我应该采取不同的方法来验证 Yup 中的整数值?任何见解或建议将不胜感激。谢谢!
我尝试将 test() 与 Number.isInteger 一起使用,但它不起作用
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),
});