在网上看的其他的前辈写的都不太准确粘过去用到“oninput”DOM原生事件的输入中文竟然会让vue双向绑定失效!!! 而且一些验证当输入小数时是可以输入"12.1.1"这能算数字??? 所以绕过前辈们的坑自己写了一个处理方式在这里分享给大家如果有问题请指正! 可以输入整数和浮点数
<el-input clearable
@input="(value)=>{isNaN(value)?isNaN(parseFloat(value))?
integral=null:integral=parseFloat(value):integral=value}"
v-model="integral">
</el-input>
思路就是输入的值不为数字将其转为Float(parseFloat这个函数只会留下数字和小数点)如果此时还不是数字那就直接返回null,其他情况直接返回转换后的值
输入 输出
'a'====> null
'123'===>123
'12.3'===>12.3
'12.33.12'==>12.33
'123.33a'===>123.33