基於vue 兄弟元件之間事件觸發(詳解)
阿新 • • 發佈:2020-01-09
直奔主題!
兄弟元件之間的事件觸發,大概思路是通過父級元件交換資料,watch來監聽觸發事件。
場景是父級元件A同時引用兩個子級元件B,C。點選B元件中的按鈕執行C元件中的事件。
第一步:父級元件A
<bottom-play :play="playStatus" @playStatus="btmChild"></bottom-play> methods:{ listChild:function(val){//B元件自定義事件 狀態是布林值 this.playStatus = val; },btmChild:function(val){//C元件自定義事件 this.btmStatus = val; } }
第二步:子級元件B程式碼
props: ['play'],//接受父級傳遞的資料 watch:{//監聽資料 如果改變執行audioPlay函式,audioPlay在methods中定義 play:'audioPlay' } audioPlay:function(){ this.$emit('playStatus',false);//向父級元件傳遞引數 }
第三步:子級元件C程式碼
props: ['btmStatus'],watch:{ btmStatus:'playList' }
總結就是A元件定義兩個值分別傳遞給B,C。然後B,C元件watch方法監聽資料觸發事件。
以上這篇基於vue 兄弟元件之間事件觸發(詳解)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。