我正在使用 antd InputNumber 组件。我想设置 maxLength 但它不起作用。我也尝试过用 max 属性来限制字符数为 12。但都没有成功。
<InputNumber
required
type="number"
addonBefore="+"
defaultValue={994}
controls={false}
value={combinedState?.phoneNumber}
onChange={(e)=> setCombinedState((prevState: any) => ({
...prevState,
phoneNumber: e,
}));}
onKeyDown={(event) => {
if (
event.key == 'e' ||
event.key == '+' ||
event.key == '-' ||
event.key == '.'
) {
event.preventDefault();
}
}}
onInput={(e) => {
if (e.length > 4) {
console.log('s');
}
}}
min={0}
max={999999999999}
/>
您无法通过 props 设置
InputNumber
的最大长度。
但是您可以使用
max
和 min
属性来限制可以在输入中输入的数字范围,并使用 step
属性来定义当前值增加或减少的数字。
export default function MyInput(props) {
// I only want a maxLength of 4 characters and 1000 as max value
return <InputNumber max={1000} min={1} />;
}
请注意,在发布到 Stack Overflow 之前,您应该自己做一些研究。看看 antd 组件文档这里可能就足够了。