欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解Vue3子組件向父組件傳遞消息

 更新時間:2023年07月11日 11:27:42   作者:椿?  
這篇文章主要介紹了Vue3子組件向父組件傳遞消息,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

父子組件之間的通信:props與emit

通常提到props,都會想到的是父組件給子組件傳值;提到emit為子組件向父組件發(fā)送消息,但其實,props也可以使子組件向父組件傳遞消息

方式為在父組件中通過為子組件綁定屬性,子組件接收;但其實,我們只需要父組件向子組件傳遞一個事件,使子組件調(diào)用該事件來獲取子組件的消息

常規(guī)使用

<!-- 子組件A -->
<template>
  <div style="color:coral">
    我是B的子組件A
  </div>
</template>
<script setup>
	import { onMounted } from "vue";
	const props = defineProps({
	  msg: String
	})
	onMounted(() => {
	  console.log('我是A,我接收到B給我傳遞的消息', props);
	})
</script>
<!-- 父組件B -->
<template>
  <div>
    <h1>我是父組件B,下面是我的子組件A</h1>
    <A msg="我是父組件B,我現(xiàn)在向A組件傳遞消息"></A>
  </div>
</template>
<script setup>
	import A from "../components/A.vue"
</script>

子組件向父組件傳遞消息

<!-- 子組件A -->
<template>
  <div style="background:gainsboro">
    <h3 style="color:coral">我是B的子組件A</h3>
    <button @click="send">向B發(fā)消息</button>
  </div>
</template>
<script setup>
	import { onMounted } from "vue";
	const props = defineProps({
	  msg: String,
	  myFn: Function
	})
	onMounted(() => {
	  console.log('我是紅薯我是紅薯,收到收到', props);
	})
	const send = () => {
	  props.myFn('我是A,我調(diào)用B的事件向它發(fā)送此消息:嘿~土豆')
	}
</script>
<!-- 父組件B -->
<template>
  <div>
    <p>我是父組件B,我傳遞給A組價的事件,A調(diào)用后我可以接收到:
      <span style="color:darkorange">{{state.childMsg}}</span>
    </p>
    <h1>我是父組件B,下面是我的子組件A</h1>
    <A
      msg="我是土豆我是土豆,收到請回答"
      :myFn="state.fn"
    ></A>
  </div>
</template>
<script setup>
	import { reactive } from "vue";
	import A from "../components/A.vue"
	const state = reactive({
	  childMsg: '暫無消息',
	  fn: (data) => {
	    state.childMsg = data
	  }
	})
</script>

當子組件A點擊“向B發(fā)送消息” 調(diào)用了這個myFn的函數(shù),并且傳遞參數(shù),父組件B中就可以收到A傳遞的參數(shù),此時就完成了子組件行父組件傳遞消息

與emit的區(qū)別:定義和調(diào)用的不同

props方式:父組件為子組件綁定一個屬性,將函數(shù)賦值給該屬性,子組件通過props接收,調(diào)用此事件,傳遞消息。emit方式:父組件需要在子組件標簽中注冊一個事件,子組件通過emit調(diào)用此事件,傳遞消息。

到此這篇關(guān)于詳解Vue3子組件向父組件傳遞消息的文章就介紹到這了,更多相關(guān)Vue3子組件向父組件傳遞消息內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解Vite的新體驗

    詳解Vite的新體驗

    這篇文章主要介紹了詳解Vite的新體驗,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-02-02
  • vue實現(xiàn)滑動驗證條

    vue實現(xiàn)滑動驗證條

    這篇文章主要為大家詳細介紹了vue實現(xiàn)滑動驗證條,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • 解決vue打包后刷新頁面報錯:Unexpected token <

    解決vue打包后刷新頁面報錯:Unexpected token <

    這篇文章主要介紹了解決vue打包后刷新頁面報錯:Unexpected token <相關(guān)知識點,需要的朋友們參考下。
    2019-08-08
  • vue.js開發(fā)實現(xiàn)全局調(diào)用的MessageBox組件實例代碼

    vue.js開發(fā)實現(xiàn)全局調(diào)用的MessageBox組件實例代碼

    最近學習了Vue.js,感覺組件這個地方知識點挺多的,而且很重要,所以決定記錄下,下面這篇文章主要給大家介紹了關(guān)于利用vue.js開發(fā)實現(xiàn)全局調(diào)用的MessageBox組件的相關(guān)資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-11-11
  • 如何在vue里添加好看的lottie動畫

    如何在vue里添加好看的lottie動畫

    這篇文章主要介紹了在vue里添加好看的lottie動畫效果的方法,在vue中引入lottie非常簡單,需要的朋友可以參考下
    2018-08-08
  • Vue中使用?Aplayer?和?Metingjs?添加音樂插件的方式

    Vue中使用?Aplayer?和?Metingjs?添加音樂插件的方式

    這篇文章主要介紹了Vue中使用?Aplayer?和?Metingjs?添加音樂插件,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-08-08
  • vue.js動態(tài)修改background-image問題

    vue.js動態(tài)修改background-image問題

    這篇文章主要介紹了vue.js動態(tài)修改background-image問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • Element Alert警告的具體使用方法

    Element Alert警告的具體使用方法

    這篇文章主要介紹了Element Alert警告的具體使用方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-07-07
  • 解決Vue運算符報錯:Syntax Error: Unexpected token問題

    解決Vue運算符報錯:Syntax Error: Unexpected token問題

    這篇文章主要介紹了解決Vue運算符報錯:Syntax Error: Unexpected token問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • Vue中@click.native的使用方法及場景

    Vue中@click.native的使用方法及場景

    在組件中時常看到@click.native,在項目中遇到后,簡單介紹下,這篇文章主要給大家介紹了關(guān)于Vue中@click.native的使用方法及場景的相關(guān)資料,需要的朋友可以參考下
    2023-11-11

最新評論