vue3中的元件通訊
阿新 • • 發佈:2022-05-11
父子通訊
子元件 child.vue
<button @click="giveParentMenthed">把這個方法拋到父元件</button>import {defineEmits} from 'vue' 父傳子中,子元件接收的引數的方法 const prop =defineProps({ data:{ type:String, default:"" } }) 子傳父:的方法
<script>
const emit = defineEmits(['ParentMenthed']); //因為vue3中,遵循按需引入,所以defineEmits在使用時需要引入
const giveParentMenthed=()=>{
emit('ParentMenthed','這是子元件跑出來的點選事件,給父元件的資料')
}
</script>
父元件 parent.vue
<child :data="childD" @ParentMenthed="giveParentMenthed"></child> <script> import child from './child.vueconst childD=ref('這是父元件傳過來的') //父傳子的資料 const giveParentMenthed=(msg:any)=>{ console.log(msg) //console:‘這是子元件跑出來的點選事件,給父元件的資料’ }' //引入
</script>
2:父傳子
父元件使用上面的父子元件,其中data就是需要傳入子元件的引數。
defineProps,在子元件裡接受