使用 formatter和parser,可以限制小数的位数
<InputNumber min={0} step={0.01} formatter={limitDecimalsF} parser={limitDecimalsP} />
const limitDecimalsF =(value)=>{ let reg = /^(-)*(d+).(dd).*$/;return `¥ ${value}`.replace(/B(?=(d{3})+(?!d))/g, ',').replace(reg,'$1$2.$3'); }; const limitDecimalsP =(value)=>{ let reg = /^(-)*(d+).(dd).*$/; return value.replace(/¥s?|(,*)/g, '').replace(reg,'$1$2.$3'); };
方法中‘$1$2$3’的含义可以到w3c查询,传送门
负数把属性min={0}去掉即可
需要不止两位小数可以根据需要修改正则中加粗的d的个数,及需要几个小数就写几个d即可