我想做 setState 验证,例如值小于 25 且大于 1,允许为空,但不允许使用字符。只想添加 1 到 24 之间的数字。
function handleChangeWithoutMinusandDecimal(e) {
const re = /^[0-9\b]+$/;
const isNumber = re.test(e.target.value) ? true : false;
// console.log(isNumber);
if (
(e.target.value > 0 && e.target.value < 25 && isNumber) ||
e.target.value === ""
) {
// console.log("hi" + e.target.value);
setState({
...state,
[e.target.name]: e.target.value,
});
}
}
不知道出了什么问题,但是有了这个,我也可以添加字符。请提出建议。
答案 0 :(得分:0)
使用 <TextField/>
组件并将 type='number'
传递给它。