Vue組件之間的數(shù)據(jù)共享詳解
一、在項目開發(fā)中,組件之間的最常見的關系分為如下兩種:
1.父子關系
2.兄弟關系
1.1 父子組件之間的數(shù)據(jù)共享
父子組件之間的數(shù)據(jù)共享又分為:
1.?父 -> 子共享數(shù)據(jù)
子組件:
父組件:
2.子 -> 父共享數(shù)據(jù)
子組件向父組件共享數(shù)據(jù)使用自定義事件。示例代碼如下
子組件:
父組件:
頁面顯示結果:
1.2 兄弟組件之間的數(shù)據(jù)共享
在 vue2.x 中,兄弟組件之間數(shù)據(jù)共享的方案是 EventBus
EventBus使用方法:
- 創(chuàng)建 eventBus.js 模塊,并向外共享一個 Vue 的實例對象
- 在數(shù)據(jù)發(fā)送方,調(diào)用 bus.$emit(‘事件名稱', 要發(fā)送的數(shù)據(jù)) 方法觸發(fā)自定義事件
- 在數(shù)據(jù)接收方,調(diào)用 bus.$on(‘事件名稱', 事件處理函數(shù)) 方法注冊一個自定義事件
示例:
1.創(chuàng)建 eventBus.js 模塊,并向外共享一個 Vue 的實例對象
2.?在數(shù)據(jù)發(fā)送方,調(diào)用 bus.$emit(‘事件名稱', 要發(fā)送的數(shù)據(jù)) 方法觸發(fā)自定義事件
3.在數(shù)據(jù)接收方,調(diào)用 bus.$on(‘事件名稱', 事件處理函數(shù)) 方法注冊一個自定義事件
總結
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關注腳本之家的更多內(nèi)容!
相關文章
Vue3中使用vuedraggable拖拽實戰(zhàn)教程
這篇文章主要介紹了Vue3中使用vuedraggable拖拽實戰(zhàn)教程,文中通過示例介紹了vue3拖拽組件vuedraggable的使用demo,需要的朋友可以參考下2023-06-06Vue3報錯‘defineProps‘?is?not?defined的解決方法
最近工作中遇到vue3中使用defineProps中報錯,飄紅,所以這篇文章主要給大家介紹了關于Vue3報錯‘defineProps‘?is?not?defined的解決方法,需要的朋友可以參考下2023-01-01