1. 程式人生 > 其它 >vue3中的元件通訊

vue3中的元件通訊

父子通訊

子元件 child.vue

<button @click="giveParentMenthed">把這個方法拋到父元件</button>
<script>
   import {defineEmits} from 'vue'      父傳子中,子元件接收的引數的方法    const prop =defineProps({       data:{           type:String,           default:""       }    })    子傳父:的方法  
  const emit = defineEmits(['
ParentMenthed']); //因為vue3中,遵循按需引入,所以defineEmits在使用時需要引入
  const giveParentMenthed=()=>{   
     emit(
'ParentMenthed','這是子元件跑出來的點選事件,給父元件的資料')   
  }
</script>

父元件 parent.vue

<child :data="childD" @ParentMenthed="giveParentMenthed"></child>
<script>
  import child from './child.vue
' //引入
   const childD=ref('這是父元件傳過來的') //父傳子的資料    const giveParentMenthed=(msg:any)=>{       console.log(msg) //console:‘這是子元件跑出來的點選事件,給父元件的資料’     }
</script>

2:父傳子

父元件使用上面的父子元件,其中data就是需要傳入子元件的引數。

defineProps,在子元件裡接受