91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

vue獲取dom元素注意事項

發布時間:2020-10-20 13:00:02 來源:腳本之家 閱讀:193 作者:蓓蕾心晴 欄目:web開發

mounted(){
    setTimeout(()=>{
     this.contentToggle();
    },1000)
  },

methods:{
   contentToggle(){
    console.log(this.$refs.bodyFont.offsetHeight);
   }
  }

vue想要獲取dom元素的高,一般情況下我們都可以想到寫在mounted函數里,即dom加載完再獲取,但是結果并不如我們所想,又想到用一個

this.$nextTick(()=>{
   
    //函數
})

來獲取,發現根本沒用啊/。。

所以好的辦法就是用一個setTimeout定時器,時間可以設為0,但是有時候生效,有時候不生效,還是加一個小的時間值比較保險,這樣就可以保證獲取到的一定是dom加載后的了,該原理適用于vue中很多傳值的問題,剛開始獲取不到傳過來的值,用一個setTimeout就可。

ps:VUE獲取DOM元素內容

通過ref來獲取dom元素

在vue官網上對ref的解釋

ref 被用來給元素或子組件注冊引用信息。引用信息將會注冊在父組件的 $refs 對象上。如果在普通的 DOM 元素上使用,引用指向的就是 DOM 元素; 如果用在子組件上,引用就指向組件實例

當 v-for 用于元素或組件的時候,引用信息將是包含 DOM 節點或組件實例的數組 

比如我現在要實現的效果是點擊用v-for生成的li ,獲取到該元素的值

首先要獲取當前點擊的li元素,我們要做的是

1.給dom添加點擊事件和ref屬性

<li class="sidebar-list" v-for="(item, index) in meunList" @click="setPageMenu(index)" ref="menuItem">
  <router-link class="sidebar-a" :to="{ path: item.listLink }" >{{item.listTitle}}</router-link>
</li>

2.然后在點擊事件方法中使用ref

setPageMenu(index) {
//這個是獲取當前menuItem值,用index來區分當前元素是v-for 產生的數組中的第幾個數
  let getMenuText = this.$refs.menuItem[index].innerText;
}

總結

以上所述是小編給大家介紹的vue獲取dom元素注意事項,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網站的支持!

向AI問一下細節

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

AI

云林县| 偏关县| 合江县| 台东县| 灵丘县| 土默特左旗| 吉林市| 长宁区| 游戏| 贞丰县| 永修县| 南开区| 平邑县| 彭水| 利津县| 南丹县| 库车县| 鸡东县| 德州市| 醴陵市| 黔西县| 思南县| 武隆县| 宁强县| 鲜城| 保山市| 长武县| 乌鲁木齐县| 吉安市| 全椒县| 莱西市| 克什克腾旗| 吉木萨尔县| 杭锦旗| 思南县| 东兰县| 襄汾县| 蒲城县| 梁山县| 乌苏市| 宣城市|