1. 程式人生 > >vue監聽input,如果不輸入正整數,顯示0

vue監聽input,如果不輸入正整數,顯示0

參考大佬寫的,主要邏輯如下,繫結input監控事件,判斷正則輸入,如果不滿足,用setTimeout延遲修改值為0

程式碼如下:
<el-input
placeholder="請輸入內容"
v-model="searcher"
v-on:input="searchValue"
clearable>
</el-input>
<script>
export default {
  data() {
    return {
      searcher: "0", 
    };
  },
  methods: {
    searchValue(){
          let reg = /^[1-9][0-9]{0,}$/;
        if (!reg.test(this.searcher)) {
            setTimeout(()=>{
             this.searcher = 0;
          },0)
        }
    }
  },
};
</script>

轉載自