中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

vue頁面DOM操作不生效怎么辦

發布時間:2021-07-13 14:02:46 來源:億速云 閱讀:171 作者:小新 欄目:web開發

這篇文章給大家分享的是有關vue頁面DOM操作不生效怎么辦的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

現象:

使用Element UI渲染了一個樹形結構,設計在鼠標移入每個節點是顯示其中的操作按鈕,效果如下:

vue頁面DOM操作不生效怎么辦

下面是出錯部分:

在新增節點后移入新增節點附近(圖中是移入一級2),功能按鈕的顯示位置出現偏移

vue頁面DOM操作不生效怎么辦

原因查找:

經過調試發現是在新增節點后,執行DOM操作獲取節點時,取到的仍是之前的結構,新增的節點并未獲取到。

原因分析:

猜測是vue使用的虛擬DOM,使得頁面雖然已經渲染出來,但在Vue實例中讓處在在虛擬DOM中,無法獲取。

解決方法:

使用Vue.nextTick,看下官方材料:

vue頁面DOM操作不生效怎么辦

‘在下次 DOM 更新循環結束之后執行延遲回調',這句話不是特別理解,不過可以看出DOM更新是一個循環的過程,在過程結束之前無法獲取到真實的DOM元素(至于這個循環是多久,還在探索中)。而將DOM操作放在nextTick中操作便可以獲取到更新后的DOM。

結果:

依據上述原理,將DOM操作的函數在更新數據后在nextTick里調用,實現了理想中的效果。

vue頁面DOM操作不生效怎么辦

vue頁面DOM操作不生效怎么辦

vue頁面DOM操作不生效怎么辦

感謝各位的閱讀!關于“vue頁面DOM操作不生效怎么辦”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

大方县| 沂源县| 阜城县| 新营市| 兰坪| 黑龙江省| 荔浦县| 阜宁县| 武夷山市| 青州市| 灵璧县| 江安县| 莱芜市| 罗源县| 边坝县| 鄄城县| 收藏| 邛崃市| 永福县| 蓝山县| 得荣县| 宣威市| 浠水县| 吉水县| 龙口市| 叶城县| 浦城县| 南和县| 灵丘县| 纳雍县| 丹阳市| 六枝特区| 紫金县| 沽源县| 白水县| 阳新县| 新竹市| 砀山县| 威远县| 师宗县| 富川|