vue組件間傳值
總結(jié)
1.父組件傳值給子組件救恨,父組件用bind(用縮寫(xiě):)綁定值到子組件身上,子組件用屬性props接收
2.子組件傳值父組件喘漏,子組件發(fā)送的形式是this.$emit(事件名,需要發(fā)送的值)拴曲,事件名:父組件on監(jiān)聽(tīng)的方法缺谴,父組件第一件事就是監(jiān)聽(tīng)子組件發(fā)送過(guò)來(lái)的事件名,@事件名=獲取值的方法女责。
3.非父子組件進(jìn)行傳值(1)先子傳父漆枚,再父?jìng)髯樱?)兄弟傳值,兩個(gè)都要引入公共js->bus抵知。首先是發(fā)送者墙基,this.$emit(名字,值)刷喜。然后是接受者,this.$on("傳過(guò)來(lái)的那個(gè)名字"残制,函數(shù)(值)),這里要注意的是接受者的這個(gè)監(jiān)聽(tīng)事件應(yīng)該是放在鉤子mounted事件內(nèi)掖疮。同時(shí)注意this指向問(wèn)題初茶。(可用封裝方法)
一.父組件傳值給子組件
父組件:
子組件:
二.子組件向父組件傳值
子組件:
父組件:
三.非父子組件進(jìn)行傳值
(1) 先子傳父,再父?jìng)髯?/h3>
a組件:
父組件:
b組件:
(2) bus.js
公共bus:
A組件:
B組件: