爲什麼我vue裏明明值改變了,watch監聽不到

爲什麼我vue裏明明值改變了,watch監聽不到


這個是boxSelect 對象,我把1的值改成true後,watch沒有監聽到

官方沒有解釋清楚。我一開始boxSelect賦值爲空對象,這樣 後續添加上去後 他就監聽不到了。只能監聽到一開始賦值對象裏面的屬性。還有個解決辦法就是將一個對象賦值給這個boxSelect對象。

你保存了嗎?是不是有緩存?

官方文檔講的很清楚,監聽是註冊的時候對屬性批量使用Object.defineProperty方法實現的,所以後添加的屬性不會監聽

給空對象添加監聽的屬性要通過

this.$set(this.boxSelect, [屬性名], [屬性值])`

如下:this.$set(this.ptjbxxForm, 'pversion', this.ptjbxxForm.pversion) 中間變量記得加引號
僅僅使用點對象賦值法vue是監聽不到的,文檔裏有解釋到.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章