單向數據流通訊spa
單向數據流通訊是指父組件傳遞數據給子組件,子組件是不能夠修改該數據的(能夠改,但會警告)對象
父組件經過自定義屬性傳遞數據給子組件,子組件使用props接收blog
若是想修改數據,子組件須要使用$emit發佈一個自定義事件,父組件用v-on進行監聽來修改數據事件
雙向數據綁定input
子組件修改父組件傳遞的數據it
1.使用syncdate
在父組件裏自定義一個屬性使用syncmodel
在子組件裏接收數據修改數據的時候使用update達到雙向數據綁定,這時候子組件點擊按鈕父組件的數據show會改變方法
2.使用v-model指令im
在父組件裏使用v-model指令控制數據
在子組件裏接收的參數名要寫成value,而後發佈input事件修改數據
事件總線
尋找倆個組件共有的對象,而且這個對象有發佈和監聽事件倆方法,能夠本身建立這樣的對象或者事件new Vue跟實例
利用這倆個事件能夠進行跨組件傳遞事件,他有很大的缺點,組件均可以改變數據,這樣會致使數據混亂
在一個組件裏引入倆組件,成爲兄弟組件
在child組件裏有個按鈕,發佈一個Handler事件傳遞一個數據
而後在brother組件裏監聽Handler事件接收數據