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

關(guān)于vue中ref的使用(this.$refs獲取為undefined)

 更新時間:2022年03月25日 15:11:23   作者:蕾蕾是個程序員  
這篇文章主要介紹了關(guān)于vue中ref的使用(this.$refs獲取為undefined),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

vue的ref(this.$refs獲取為undefined)

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

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è)置樣式

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

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

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

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

解決方案:

通過

setTimeout(() => {

    }, 0)

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

vue的$refs屬性幾個注意點

1.在vue中獲取dom推薦使用$refs來獲取

可是有時會出現(xiàn) this.$refs.xxx 為undefined的情況。

場景1:在created()里使用

在這個生命周期中進行數(shù)據(jù)觀測 ,屬性和方法的運算,watch 事件回調(diào)。但是頁面還沒有掛載上去,沒有e l 屬 性 , t h i s . el 屬性,this.el屬性,this.refs無法調(diào)用dom。

解決辦法:換成在mounted()里使用

場景2:父元素或當前元素使用了v-if或v-show

因為$refs不是響應(yīng)式的,只在組件渲染完成后才會生效,在初始渲染的時候是不存在的。

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

解決辦法:可以通過setTimeout(()=>{…}, 0)來實現(xiàn)。

2.如果使用v-for

遍歷加ref時可以使用 :,即 :ref ="variable" ,這樣得到的是不同的ref。

<div v-for="(item,index) in arr" :key="index">
? <child ?:ref="`refName${index}`"/>
</div>
//this.$refs[`refName${index}`]每一項都是一個僅包含一個元素的數(shù)組
this.$refs[`refName${index}`][0].fun();//調(diào)用第一個組件內(nèi)的方法

但是也可以不使用 :,這時得到的 ref 將會是一個包含了對應(yīng)數(shù)據(jù)源的這些子組件的數(shù)組。

<div v-for="(item,index) in arr" :key="index">
? <child ?ref="refName"/>
</div>
//this.$refs.refName是一個包含了對應(yīng)數(shù)據(jù)源的這些子組件的數(shù)組
this.$refs.refName[0].fun();//調(diào)用第一個組件內(nèi)的方法

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

相關(guān)文章

  • 關(guān)于vue跳轉(zhuǎn)后頁面置頂?shù)膯栴}

    關(guān)于vue跳轉(zhuǎn)后頁面置頂?shù)膯栴}

    這篇文章主要介紹了關(guān)于vue跳轉(zhuǎn)后頁面置頂?shù)膯栴},具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • vue-router之實現(xiàn)導(dǎo)航切換過渡動畫效果

    vue-router之實現(xiàn)導(dǎo)航切換過渡動畫效果

    今天小編就為大家分享一篇vue-router之實現(xiàn)導(dǎo)航切換過渡動畫效果,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-10-10
  • 使用vue.js在頁面內(nèi)組件監(jiān)聽scroll事件的方法

    使用vue.js在頁面內(nèi)組件監(jiān)聽scroll事件的方法

    今天小編就為大家分享一篇使用vue.js在頁面內(nèi)組件監(jiān)聽scroll事件的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • Vue實現(xiàn)瀏覽器端掃碼功能

    Vue實現(xiàn)瀏覽器端掃碼功能

    本文主要介紹,通過使用基于 vue技術(shù)棧的前端開發(fā)技術(shù),在瀏覽器端調(diào)起攝像頭,并進行掃碼識別功能,對識別到的二維碼進行跳轉(zhuǎn)或其他操作處理,對vue瀏覽器掃碼功能的實現(xiàn)代碼感興趣的朋友一起看看吧
    2021-10-10
  • 詳解Weex基于Vue2.0開發(fā)模板搭建

    詳解Weex基于Vue2.0開發(fā)模板搭建

    這篇文章主要介紹了詳解Weex基于Vue2.0開發(fā)模板搭建,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • element-ui 上傳圖片后清空圖片顯示的實例

    element-ui 上傳圖片后清空圖片顯示的實例

    今天小編就為大家分享一篇element-ui 上傳圖片后清空圖片顯示的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • 詳解Vue.js之視圖和數(shù)據(jù)的雙向綁定(v-model)

    詳解Vue.js之視圖和數(shù)據(jù)的雙向綁定(v-model)

    本篇文章主要介紹了Vue.js之視圖和數(shù)據(jù)的雙向綁定(v-model),使用v-model指令,使得視圖和數(shù)據(jù)實現(xiàn)雙向綁定,有興趣的可以了解一下
    2017-06-06
  • Vue2和Vue3的10種組件通信方式梳理

    Vue2和Vue3的10種組件通信方式梳理

    這篇文章主要介紹了Vue2和Vue3的10種組件通信方式梳理,本文將通過選項式API?組合式API以及setup三種不同實現(xiàn)方式全面介紹Vue2和Vue3的組件通信方式,需要的朋友可以參考一下
    2022-08-08
  • VUE+Element實現(xiàn)增刪改查的示例源碼

    VUE+Element實現(xiàn)增刪改查的示例源碼

    這篇文章主要介紹了VUE+Element實現(xiàn)增刪改查的示例源碼,幫助大家更好的理解和使用vue,感興趣的朋友可以了解下
    2020-11-11
  • 淺談webpack SplitChunksPlugin實用指南

    淺談webpack SplitChunksPlugin實用指南

    這篇文章主要介紹了淺談webpack SplitChunksPlugin實用指南,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-09-09

最新評論

利川市| 抚远县| 峨边| 云浮市| 张家港市| 嘉禾县| 皮山县| 龙岩市| 苍梧县| 阜新市| 黄陵县| 西林县| 阿拉善左旗| 镇远县| 临江市| 泸西县| 高台县| 屏边| 梁平县| 盘锦市| 平塘县| 德保县| 方城县| 怀仁县| 萨迦县| 神池县| 虹口区| 阜阳市| 临澧县| 榆社县| 榆林市| 桃园县| 建阳市| 定陶县| 临海市| 海阳市| 双鸭山市| 浠水县| 贵州省| 深州市| 上蔡县|