1:v-model是什麼?
語法糖。不夠詳細?實現數據雙向綁定的語法糖!
2:v-model的本質?
既然是實現數據雙向綁定,那麼如果不使用v-model該怎麼實現?請看下面栗子:
<div id="app">
<input type="text" v-bind:value="defaultValue" v-on:input="setDefaultValue($event.target.value)">
</div>
let vm = new Vue({
el: '#app',
data: {
defaultValue: 'Vue bidirectional data binding'
},
methods:{
setDefaultValue(value){
this.defaultValue = value
}
}
})
- data中初始化定義變量defaultValue;
- 輸入框上綁定此初始化變量defaultValue,則實現了數據的單向流動;
- 監聽輸入框的input事件,並綁定用於更新初始化變量defaultValue的setDefaultValue事件,並傳入輸入框value;
- setDefaultValue將出入框value值賦值給defaultValue,這裏即實現數據雙向流動;
- 使用語法糖後<input type="text" v-model="defaultValue">;
以上就是關於對v-model語法糖的認知,如有歧義,望指正。