.sync和v-model的區別


v-model雙向綁定實現   單向數據流-》 父組件將值傳遞給子組件,子組件修改值時,將當前值e.target.value傳遞給父組件,父組件將該值傳遞給子組件,子組件的值修改

子組件 kInput.vue

<input :value="value" @input="onInput" v-bind="$attrs">

父組件 parent.vue

<!--      v-model代表着已經將子組件的value傳遞了過去-->
<KInput v-model="model.username"></KInput>

<!-- 和上面作用一樣,上面的寫法只是一個語法糖-->
<!-- <KInput :value="model.username" @input="getData"></KInput>-->
<KInput v-model="model.password" type="password"></KInput>
V-model等同於:value+@input事件的結合

sync修飾符添加於v2.4,類似於v-model,他能用於修改傳遞到子組件的屬性
<Input :value.sync="username">等同於
<Input :value="username" @updata:value="usernaem=$event">
這里綁定的屬性名稱更改,相應的屬性名也會變化
<Input :foo="username" @updata:foo="usernaem=$event">
用於場景:父組件傳遞的屬性子組件想修改
sync修飾符的控制能力都在父級,事件名稱也相對固定update:xx

 



免責聲明!

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



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