1. 非vuex實現 非父組件之間的通信
原理是:在父組件或者全局創建一個事件倉儲eventHub,然後通過$emit 和 $on 實現通信
1.1 通過在window上綁定eventHub的Vue實例對象,具體實現方法如下:
目錄結構
在綁定eventHub實例對象之前需要import Vue from ‘vue’,然後根組件中使用window.eventHub = new Vue()
在cartControl子組件通過$emit發送通信,在shopcart裏通過$on接收通信
1.2通過在根組件中的main.js中註冊事件倉儲
在main.js中創建事件倉儲後,直接在data中綁定eventHub,然後就可以在子組件通過this.$root.eventHub訪問到事件倉儲