方法一:通过正则,缺点没有限制最大数值,使用了步进器时可以输入负数,如下图所示
<el-input v-model="value" type="number" @keydown="handleInput2"></el-input>
handleInput2(e: any) {
// 通过正则过滤小数点后两位
e.target.value = e.target.value.match(/^\d*(\.?\d{0,5})/g)[0] || null;
},
然后发现加上min="0"就可以解决这个bug
<el-input v-model="value" type="number" @keydown="handleInput2" min='0'></el-input>
handleInput2(e: any) {
// 通过正则过滤小数点后两位
e.target.value = e.target.value.match(/^\d*(\.?\d{0,5})/g)[0] || null;
},
方法二:通过el-input-numbe标签,缺点是显示的丑,小数点后6位都显示出来了,如下图所示
<el-input-number style="width: 100%" v-model="value" :precision="6" :step="1" :min="0" :max="999999999999.999999" controls-position="right" />