inputNumber 组件带有人民币符号,webpack打包后,显示错乱
1.先看官方给的代码:
<InputNumber
formatter={value => `¥${value}`.replace(/\B(?=(\d{3})+(?!\d))/g, ',')}
parser={value => value.replace(/\¥\s?|(,*)/g, '')}
style={{ width: '100%' }}
min={0}
/>
2.这样写得代码,在本地运行不会提示错误,但webpack打包以后,就会出现显示错乱:
3.思考:
为什么webpack打包以后就显示不正常了呢?这里第一反应就是正则表达式有问题了,所以我们对正则表达式进行修改,
去掉人民币¥符号前面的\,这里我猜测应该是webpack打包的时候,识别成了转义字符了。
<InputNumber
formatter={value => `¥${value}`.replace(/\B(?=(\d{3})+(?!\d))/g, ',')}
parser={value => value.replace(/¥\s?|(,*)/g, '')}
style={{ width: '100%' }}
min={0}
/>
4.总结,有时候官方给的代码也会出现问题吧!但只要明白正则表达式的写法,问题原因就很快能找到了。
有问题,请联系我:
1798274010@qq.com