vue3使用defineModel實現(xiàn)父子組件雙向綁定
在vue3.4版本中,defineModel進入穩(wěn)定版。我們可以使用defineModel來優(yōu)化父子組件中的雙向綁定。在3.3之前的版本中,雙向綁定需要在使用props和emits傳值,現(xiàn)在我們只需要一行代碼就可以解決這個問題:const 變量名=defineModel()
在子組件Helloworld.vue中:
<template> <div class="page"> <input type="text" :value="fonts" @input="(e:any) => (fonts= e.target.value)" size="large" class="inputBox" /> </div> </template> <script lang="ts" setup> import { defineModel } from "vue"; const fonts = defineModel(); </script> <style scoped lang="less"> .page { width: 600px; height: 150px; } </style>
在父組件中:
<template> <div class="home"> <div class="mian"> <div class="text">{{ fonts }}</div> <HelloWorld v-model="fonts" /> </div> </div> </template> <script lang="ts" setup> import HelloWorld from "@/components/HelloWorld.vue"; import { ref } from "vue"; const fonts = ref<string>("aaa"); </script> <style> .home { width: 100vw; height: 100vh; display: flex; justify-content: center; align-items: center; } </style>
再看看效果
以上就是vue3使用defineModel實現(xiàn)父子組件雙向綁定的詳細(xì)內(nèi)容,更多關(guān)于vue3 defineModel父子組件綁定的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
手把手帶你使用vue+node作后端連接數(shù)據(jù)庫
為了快速學(xué)習(xí)nodejs制作后端并和數(shù)據(jù)庫進行交互的方法,所以趕緊寫一篇這樣的文章出來,下面這篇文章主要給大家介紹了關(guān)于手把手帶你使用vue+node作后端連接數(shù)據(jù)庫的相關(guān)資料,需要的朋友可以參考下2023-03-03vue中關(guān)于_ob_:observer的處理方式
這篇文章主要介紹了vue中關(guān)于_ob_:observer的處理方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-07-07淺談一下Vue生命周期中mounted和created的區(qū)別
每一個vue實例從創(chuàng)建到銷毀的過程,就是這個vue實例的生命周期,在這個過程中,他經(jīng)歷了從開始創(chuàng)建、初始化數(shù)據(jù)、編譯模板、掛載Dom、渲染→更新→渲染、卸載等一系列過程,那么這些過程中,具體vue做了些啥,我們今天來了解一下2023-05-05vue實現(xiàn)div可拖動位置也可改變盒子大小的原理
這篇文章主要介紹了vue實現(xiàn)div可拖動位置也可改變盒子大小,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-09-09