1 回答

TA貢獻(xiàn)1871條經(jīng)驗(yàn) 獲得超13個(gè)贊
前在項(xiàng)目中有這么兩個(gè)平行的vue.js組件, 都掛載在$el:document.body下:hall和detail
現(xiàn)在的情況是, detail中的某個(gè)值改變了, 需要在hall中的某個(gè)值也作出相應(yīng)的改變。 本來(lái)是想做父子組件的, 但項(xiàng)目框架如此, 改還要牽扯到很多, 暫緩了。
我們知道vue.js中組件樹(shù)的通信是比較方便的: 子組件可以通過(guò)v-bind和prop來(lái)從父組件繼承值并雙向綁定, 而子組件也可以通過(guò)$dispatch方法來(lái)向父組件發(fā)送信息
那么這種平行的子組件之間, 有沒(méi)有什么好的通信方法呢?
現(xiàn)在的臨時(shí)解決方案就是:收到ajax的返回信息之后, 在回調(diào)函數(shù)中這樣寫:
this.$parent.$children[0].$data.somedata = somavalue
但這樣的寫法讓我很不安, 且不說(shuō)那個(gè)強(qiáng)耦合$children[0], 實(shí)現(xiàn)也不甚優(yōu)雅
- 1 回答
- 0 關(guān)注
- 587 瀏覽
添加回答
舉報(bào)