簡(jiǎn)述網(wǎng)站的創(chuàng)建流程百度推廣工具有哪些
v-model雙向綁定的原理:
??v-model 是Vue.js 提供的一個(gè)指令,用于實(shí)現(xiàn)雙向數(shù)據(jù)綁定
,它可以將表單元素的值與Vue實(shí)例的數(shù)據(jù)綁定在一起,當(dāng)表單元素的值發(fā)生改變時(shí),Vue實(shí)例的數(shù)據(jù)也會(huì)隨之更新,反之亦然。
??v-model 的原理實(shí)際上就是通過事件機(jī)制
實(shí)現(xiàn)的。當(dāng)一個(gè)表單元素(如input、textarea)的值發(fā)生變化時(shí),它會(huì)觸發(fā)一個(gè)change事件或input事件,Vue.js 會(huì)監(jiān)聽這些事件并更新數(shù)據(jù)。同時(shí),當(dāng)Vue實(shí)例的數(shù)據(jù)發(fā)生變化時(shí),也會(huì)觸發(fā)一個(gè)更新視圖的事件,從而實(shí)現(xiàn)數(shù)據(jù)與視圖的同步更新
。
<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>Document</title><script src="vue.js"></script></head><body><div id="box"><!-- v-model雙向綁定的指令,快速獲取輸入框的值 -->{{mytext}}<input type="text" v-model="mytext" /><button @click="handleAdd">add</button><ul><!-- 第二個(gè)參數(shù)為索引下標(biāo) --><li v-for="item,index in datalist">{{item}}<button @click="handleDel(index)">delete</button></li></ul><!-- 列表為空時(shí) --><div v-show="datalist.length===0">暫無待辦事項(xiàng)</div></div><script>var obj = {data() {return {mytext: "",datalist: ["11", "22", "33"],};},methods: {//增加列表內(nèi)容handleAdd() {console.log("add", this.mytext);this.datalist.push(this.mytext);// 清空輸入框this.mytext = "";},//刪除列表內(nèi)容handleDel(index) {console.log("del", index);this.datalist.splice(index, 1);},},};var app = Vue.createApp(obj).mount("#box");</script></body>
</html>
注意: v-model 只能用于表單元素,如input、textarea、select 等,而不能用于自定義組件。