鍍金池/ 問答/HTML/ vue監(jiān)聽子組件props,有的監(jiān)聽不到

vue監(jiān)聽子組件props,有的監(jiān)聽不到

clipboard.png

如圖是個子組件A,由上級組件B傳遞prop一個對象:
dataset:{
type:1,//類型
content:'',//內(nèi)容
self:true,//自理
distanc:''//行駛距離
.....//其他屬性
}
子組件A和B中都測試了監(jiān)聽watch,奇怪的是【內(nèi)容】【行駛距離】等input修改可以觸發(fā)監(jiān)聽,【類型】【自理】等select、checkbox修改無法觸發(fā)監(jiān)聽,打印結(jié)果顯示數(shù)據(jù)也改變了,就是沒有觸發(fā)watch。這是為什么。

clipboard.png
測試了data中自定義的相同格式的dataset沒有問題。

回答
編輯回答
我不懂
奇怪的是【內(nèi)容】【行駛距離】等input修改可以觸發(fā)監(jiān)聽,【類型】【自理】等select、checkbox修改無法觸發(fā)監(jiān)聽

根據(jù)你這點描述我猜應(yīng)該是【類型】【自理】這幾個字段是在Vue數(shù)據(jù)響應(yīng)綁定后才加入的,這樣的話數(shù)據(jù)在后續(xù)變化是是響應(yīng)不了的,請檢查。

2017年7月13日 11:57
編輯回答
兮顏

我剛寫了一個demo重新驗證了下,通過props傳值是復(fù)選框和下拉框是可以被watch監(jiān)聽到的,我是用的element作為UI寫的,你是寫的原生的還是其他的,你說的打印是在父組件里面打印出來數(shù)據(jù)有變化嗎?

2017年6月16日 05:03