示例
在失去焦点和获取焦点的事件中做添加千分位和删除千分位
import React from 'react';
import * as validateUtil from '../../utils/vaildator'
import * as datepipe from '../../utils/format/index';
const dateFormat = new datepipe.DateMonjiPipe();
const vaildate = new validateUtil.validateUtil();
export default React.memo((props: any) => {
const [loginInfo, setLoginInfo] = React.useState('');
const [msg, setmsg] = React.useState('');
const onchange = (e:any) => {
setLoginInfo(e.target.value)
}
const onBlur = (e: any) => {
setLoginInfo(e.target.value.replace(/\B(?=(\d{3})+$)/g, ','))
if (!vaildate.isNotBlank(loginInfo)) {
return setmsg('必填值')
}
}
const onfocus = (e:any) => {
setLoginInfo(e.target.value.replace(/,/g, ''))
return setmsg('')
}
return (
<React.Fragment>
<input type="text" onFocus={onfocus} onBlur={onBlur} value={loginInfo} name="username" onChange={(e) => { onchange(e) }} />
<p>
{msg}
</p>
</React.Fragment>
)
})