最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue中this.$refs.name.offsetHeight獲取不到值問題

 更新時間:2023年05月19日 09:36:41   作者:qq_36437172  
這篇文章主要介紹了vue中this.$refs.name.offsetHeight獲取不到值問題及解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

vue this.$refs.name.offsetHeight獲取不到值

通過 vue 動態(tài)獲取剩余區(qū)域的滾動高度 中的需求,固定高度如果是一個組件(組件里使用 v-if )時,我們無法通過之前的方式(this.$refs.name.offsetHeight)獲取到數(shù)據(jù),那我們怎么辦呢?

<template>
? <div class="introduce" v-if="JSON.stringify(entryObj) !== '{}'">
? ? ...
? </div>
</template>

此刻我們可以在子組件mounted鉤子中使用 nextTick,傳遞給父組件。

this.$nextTick(() => { //使用nextTick為了保證dom元素都已經(jīng)渲染完畢?
? this.$emit('eventGetHeight',this.$el.offsetHeight);
});

父組件中監(jiān)聽eventGetHeight事件,并取得這個數(shù)據(jù)。

<introduce?
? :entryObj="intrObj"?
? v-show="!dialogShow"?
? @openDialog="open"?
? @eventGetHeight="getHeight"?
? ref="intr"
></introduce>

獲取到屏幕高度和固定高度后,我們可以計算出內(nèi)容區(qū)域滾動高度了。

getHeight(data){
? let clientHeight = document.documentElement.clientHeight || document.body.clientHeight;
? this.scrollHeight = (clientHeight - data) +'px'
},

只需在內(nèi)容區(qū)域動態(tài)設(shè)置屬性即可實現(xiàn)。

<div style="overflow-x: hidden; overflow-y: scroll;" :style="{ height: scrollHeight }">
? ...
</div>

注意:調(diào)用的組件和 v-if 結(jié)合使用,且組件的數(shù)據(jù)是動態(tài)的,即高度也是動態(tài)的。

ref不是響應(yīng)式的,所有的動態(tài)加載的模板更新它都無法相應(yīng)的變化。

通過渲染子組件成功之后(即獲取到動態(tài)數(shù)據(jù)),傳遞給父組件,再進行計算滾動區(qū)域。

vue中ref的使用(this.$refs獲取為空)

但是有個辦法,我們可以使用 

this.$nextTick(() => {
? ? // todo
})
setTimeout(() => {
? ? // todo
}, 0)

來得到數(shù)據(jù)

ref

  • 本身作為渲染結(jié)果被創(chuàng)建,在初始渲染的時候不能訪問他們,是不存在的
  • $refs不是響應(yīng)式的,只在組件渲染完成后才填充
  • 用于元素或子組件注冊引用信息,注冊完成,將會注冊在父組件$refs對象上

如果你獲取到的總是空的,你注意一下

1、你在哪里調(diào)用,和你調(diào)用的對象

  • 試試在mounted()里面調(diào)用有效果沒有
  • 調(diào)用的對象是本來就存在的,還是需要數(shù)據(jù)渲染之后才會出現(xiàn)的,同理,在mounted()里面調(diào)用看看

2、調(diào)用對象是不是數(shù)組列表

  • 我一開始設(shè)置ref在v-for列表上,直接獲取this.$refs.name.style,永遠是空的,
  • 后來才發(fā)現(xiàn),this.$refs.name是一個數(shù)組,無法通過 .style 獲取樣式,
  • 只能遍歷這個this.$refs.name數(shù)組,在this.$refs.name[index]上設(shè)置樣式

// 更新,這個說法有點問題

但是像高度寬度,可以通過offsetHeight,等來獲取。

3、調(diào)用對象是否和v-if結(jié)合使用

  • ref不是響應(yīng)式的,所有的動態(tài)加載的模板更新它都無法相應(yīng)的變化。

最后

在使用中,我發(fā)現(xiàn)$refs.style只能設(shè)置該對象的樣式,獲取出來的值都是空的

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue.js 圖片上傳并預覽及圖片更換功能的實現(xiàn)代碼

    vue.js 圖片上傳并預覽及圖片更換功能的實現(xiàn)代碼

    這篇文章主要介紹了vue.js 圖片上傳并預覽及圖片更換功能,小編主要圍繞我們?nèi)粘J褂霉δ艿睦幼鲋v解,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-08-08
  • 詳解vue3+element-plus實現(xiàn)動態(tài)菜單和動態(tài)路由動態(tài)按鈕(前后端分離)

    詳解vue3+element-plus實現(xiàn)動態(tài)菜單和動態(tài)路由動態(tài)按鈕(前后端分離)

    本文需要使用axios,路由,pinia,安裝element-plus,并且本文vue3是基于js而非ts的,這些環(huán)境如何搭建不做描述,需要讀者自己完成,感興趣的朋友跟隨小編一起看看吧
    2023-11-11
  • vue3接口數(shù)據(jù)賦值對象,渲染報錯問題及解決

    vue3接口數(shù)據(jù)賦值對象,渲染報錯問題及解決

    這篇文章主要介紹了vue3接口數(shù)據(jù)賦值對象,渲染報錯問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • Vue3實現(xiàn)pdf預覽功能

    Vue3實現(xiàn)pdf預覽功能

    在開發(fā)中,PDF預覽和交互功能是一個常見的需求,無論是管理系統(tǒng)、在線教育平臺,還是企業(yè)內(nèi)部的知識庫,能夠高效地展示和操作PDF文件都能極大地提升用戶體驗,本文將詳細介紹如何在Vue項目中實現(xiàn)pdf預覽功能,需要的朋友可以參考下
    2025-03-03
  • vue開發(fā)簡單上傳圖片功能

    vue開發(fā)簡單上傳圖片功能

    這篇文章主要為大家詳細介紹了vue開發(fā)簡單上傳圖片功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-06-06
  • Vue基礎(chǔ)學習之ref響應(yīng)式數(shù)據(jù)、v-指令、computed

    Vue基礎(chǔ)學習之ref響應(yīng)式數(shù)據(jù)、v-指令、computed

    Vue3引入了全新的響應(yīng)式系統(tǒng),使得數(shù)據(jù)管理更為靈活和高效,這篇文章主要介紹了Vue基礎(chǔ)學習之ref響應(yīng)式數(shù)據(jù)、v-指令、computed的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2026-03-03
  • 解決Vite無法分析出動態(tài)import的類型,控制臺出警告的問題

    解決Vite無法分析出動態(tài)import的類型,控制臺出警告的問題

    這篇文章主要介紹了解決Vite無法分析出動態(tài)import的類型,控制臺出警告的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • vue實現(xiàn)循環(huán)滾動圖片

    vue實現(xiàn)循環(huán)滾動圖片

    這篇文章主要為大家詳細介紹了vue實現(xiàn)循環(huán)滾動圖片,多圖片輪播,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • vue之Element-Ui輸入框顯示與隱藏方式

    vue之Element-Ui輸入框顯示與隱藏方式

    這篇文章主要介紹了vue之Element-Ui輸入框顯示與隱藏方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • 深入理解vue中的$set

    深入理解vue中的$set

    這篇文章主要介紹了深入理解vue中的$set,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06

最新評論

康乐县| 化隆| 拜泉县| 越西县| 胶州市| 安多县| 叶城县| 阿巴嘎旗| 新化县| 奉节县| 盐津县| 日喀则市| 丰原市| 旅游| 浦东新区| 内乡县| 马鞍山市| 合川市| 松阳县| 长兴县| 吉木乃县| 苍溪县| 招远市| 南汇区| 临洮县| 吉水县| 巴彦淖尔市| 赫章县| 黄山市| 永寿县| 图们市| 馆陶县| 贡觉县| 承德县| 长葛市| 元朗区| 淮滨县| 白河县| 永定县| 象州县| 芒康县|