type FilterCommaFormItemInputNumberProps = Omit<FormItemProps, 'rules'> &
InputNumberProps & {
disabled?: boolean;
addonAfter?: React.ReactNode;
maxValiNum: number;
};
/** 使用 React.cloneElement 或直接自定义失效?? */
export const FilterCommaFormItemInputNumber = React.memo<FilterCommaFormItemInputNumberProps>(
({ min, name, label, disabled, className, addonAfter, maxValiNum, initialValue }) => {
return (
<Form.Item className={className} label={label}>
<Form.Item
noStyle
name={name}
initialValue={initialValue}
validateTrigger={['onChange']}
rules={[
{
validator: (rule, value) => validInputNumberMaxVal(maxValiNum, rule, value),
},
]}
>
<InputNumber
min={min}
disabled={disabled}
style={{ width: 140 }}
className="a-font-12"
parser={(value) => value?.replace('.', '') as string}
/>
</Form.Item>
{addonAfter ? <span className="a-font-12"> {addonAfter}</span> : addonAfter}
</Form.Item>
);
},
);