mpvue的自定義組件中運行$emit函數時輸入框光標抖動的解決辦法

記錄一個mpvue中遇到的問題css

遇到問題

//css
 <input type="number" v-model="value" @input="getValue">

//vue 
export default {
 data() {
      return {
        value: ''
      }
    },
 methods:{
     getValue() {
        this.$emit('value', this.value);
      }
 }
}

在getValue中運行emit時輸入框的光標抖動。光標閃爍這個問題通常能夠用官網推薦的方法v-model.lazy修飾符解決,可是在此狀況嘗試無效。vue

解決辦法

因而我用想象力,沒錯是想象力T_T|||。我想光標頻繁閃爍是否是value被頻繁操做,因而嘗試斷開emit和v-model的耦合關係,問題居然真解決了...也是醉啊...this

...
getValue() {
 var val = this.value;
 setTimeout(() => {
    this.$emit('value', val);
 }, 0)
},
...
相關文章
相關標籤/搜索