Vue 使用eventBus 實現兄弟組件間的通訊

實現方式:  主要是在相互通訊的兄弟組件之中,都引入一個新的vue實例,而後經過分別調用這個實例的事件觸發事件廣播 和監聽來實現通訊和參數傳遞。vue

需求: a頁面tree的增刪改後,數據仍是以前的老數據,要求b頁面的tree的數據也要更新。ios

A頁面: 綁定事件,並經過eventBus.$emit觸發。axios

 增長 window.eventBus.$emit('getTreeData',1)
 getTreeData(){ // 獲取節點數據
      window.eventBus.$emit('getTreeData',1)
      axios.get('getpro/getTree')
      .then((res) => {
        if(res.data.retCode === '200'){
          this.Opt = Vue.formatTreeData3(res.data.data)
    },

 

B頁面: created或者mounted裏調用,使用eventBus.$on接收。this

    window.eventBus.$on('getTreeData',()=>{
      this.getTreeData()
    })
相關文章
相關標籤/搜索