v-model原理解析


vue中v-model可以實現數據的雙向綁定,但是為什么這個指令就可以實現數據的雙向綁定呢?

其實v-model是vue的一個語法糖。即利用v-model綁定數據后,既綁定了數據,又添加了一個input事件監聽。

實現原理:

1、v-bind綁定響應數據

2、觸發input事件並傳遞數據

簡單案例:

<input v-model="text"></input>
// 等價於:
<input :value="text" @input="text = $event.target.value"></input>
// 組件中使用:
<custom-input :value="text" @input="$event"></custom-input>
// 根據v-model原理模擬:
<input type="text" id="ipt1">
<input type="text" id="ipt2">
<script>
    var ipt1=document.getElementById('ipt1');
    var ipt2=document.getElementById('ipt2');
    ipt1.addEventListener("input",function(){
        ipt2.value=ipt1.value;
    })
</script>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM