方法一:通过正则,缺点没有限制最大数值,使用了步进器时可以输入负数,如下图所示
在这里插入图片描述

   <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" />
Logo

前往低代码交流专区

更多推荐