欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue 獲取元素額外生成的data-v-xxx操作

 更新時(shí)間:2020年09月09日 14:15:52   作者:maidu_xbd  
這篇文章主要介紹了vue 獲取元素額外生成的data-v-xxx操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

需求描述:由于樣式中使用了scoped,所以編譯后標(biāo)簽對(duì)中生成data-v-xxx屬性。在【.dialog_content】的div中 動(dòng)態(tài)添加元素節(jié)點(diǎn)p和span時(shí),也需要給元素節(jié)點(diǎn)添加data-v-xxx屬性。由于data-v-xxx屬性是會(huì)變化的,那如何獲取它,添加在動(dòng)態(tài)添加的元素節(jié)點(diǎn)中呢?本博客將給出解決方案。

【解決方法】

獲取屬性名【document.getElementById("dialog_submit").attributes[0].name】

設(shè)置屬性【nodeP.setAttribute(dataV, "")】

var nodeP = document.createElement("p"),
nodeSpan = document.createElement("span");
// 獲取data-v-xxxx的值
var dataV = document.getElementById("dialog_submit").attributes[0].name;
// 設(shè)置屬性
nodeP.setAttribute(dataV, "");
nodeSpan.setAttribute(dataV, "");

【補(bǔ)充知識(shí)】

當(dāng) <style> 標(biāo)簽有 scoped 屬性時(shí),它的 CSS 只作用于當(dāng)前組件中的元素。編譯時(shí)將生成data-v-xxx屬性,如下的“data-v-2bc3d899”就是因?yàn)榧恿藄coped.

<style scoped>
.title {
 color:blue;
}
</style>
 
<template>
 <div class="title">hello</div>
</template>

上述代碼被編譯為:

<style>
.title[data-v-f3f3eg9] {
 color: blue;
}
</style>
 
<template>
 <div class="title" data-v-f3f3eg9>hello</div>
</template>

使用 scoped 后,父組件的樣式將不會(huì)滲透到子組件中。不過一個(gè)子組件的根節(jié)點(diǎn)會(huì)同時(shí)受其父組件的 scoped CSS 和子組件的 scoped CSS 的影響。這樣設(shè)計(jì)是為了讓父組件可以從布局的角度出發(fā),調(diào)整其子組件根元素的樣式。

深度作用選擇器:

如果希望 scoped 樣式中的一個(gè)選擇器能夠作用得“更深”,例如影響子組件,可以使用 >>> 操作符:

<style scoped>
.a >>> .b { /* ... */ }
</style>

上述代碼被編譯為:

.a[data-v-f3f3eg9] .b { /* ... */ }

參考:https://vue-loader.vuejs.org/zh/guide/scoped-css.html

補(bǔ)充知識(shí):vue 自定義屬性 data-v,closest 獲取事件源外層元素

在遇到使用e.target 的時(shí)候,通常會(huì)傳一個(gè)參數(shù),比較簡單,在此記錄一下

使用:data-XXX 來綁定

 <div class="custom-tree-node"
        slot-scope="{ node, data }"
        :data-id="data.id"
</div>

獲取 :

利用closeet 獲取到當(dāng)前目標(biāo)元素最近的外層元素含有 custom-tree-node 類名的dom

然后再利用 dataset.id 拿到傳的值

 async handleTouchEnd (event) {
   let customNode = event.target.closest('.custom-tree-node')
   if (customNode) {
    let data = {}
    data.id = customNode.dataset.id
    }
}  

以上這篇vue 獲取元素額外生成的data-v-xxx操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Vue如何解決每次發(fā)版都要強(qiáng)刷清除瀏覽器緩存問題

    Vue如何解決每次發(fā)版都要強(qiáng)刷清除瀏覽器緩存問題

    這篇文章主要介紹了Vue如何解決每次發(fā)版都要強(qiáng)刷清除瀏覽器緩存問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • 基于vue實(shí)現(xiàn)web端超大數(shù)據(jù)量表格的卡頓解決

    基于vue實(shí)現(xiàn)web端超大數(shù)據(jù)量表格的卡頓解決

    這篇文章主要介紹了基于vue實(shí)現(xiàn)web端超大數(shù)據(jù)量表格的卡頓解決,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • Vue拖拽組件開發(fā)實(shí)例詳解

    Vue拖拽組件開發(fā)實(shí)例詳解

    本文重點(diǎn)給大家介紹Vue拖拽組件開發(fā)實(shí)例,拖拽的原理是手指在移動(dòng)的過程中,實(shí)時(shí)改變元素的位置即top和left值,使元素隨著手指的移動(dòng)而移動(dòng)。對(duì)實(shí)例代碼感興趣的朋友跟隨腳本之家小編一起學(xué)習(xí)吧
    2018-05-05
  • 關(guān)于TypeScript的踩坑記錄

    關(guān)于TypeScript的踩坑記錄

    這篇文章主要介紹了關(guān)于TypeScript的踩坑記錄,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • Vue2的16種傳參通信方式總結(jié)和示例講解

    Vue2的16種傳參通信方式總結(jié)和示例講解

    Vue2中路由傳參數(shù):props(父傳子),$emit與v-on(子傳父),EventBus(兄弟傳參),.sync與update:(父子雙向),v-model(父子雙向),ref?$children與$parent,$attrs與$listeners(爺孫雙向),provide與inject(多層傳參),Vuex,Vue.prototype,路由,瀏覽器緩存,window,$root,slot(父傳子)
    2024-08-08
  • vue實(shí)現(xiàn)打包添加二級(jí)目錄

    vue實(shí)現(xiàn)打包添加二級(jí)目錄

    這篇文章主要介紹了vue實(shí)現(xiàn)打包添加二級(jí)目錄方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • vue中@click綁定事件點(diǎn)擊不生效的原因及解決方案

    vue中@click綁定事件點(diǎn)擊不生效的原因及解決方案

    根據(jù)Vue2.0官方文檔關(guān)于父子組件通訊的原則,父組件通過prop傳遞數(shù)據(jù)給子組件,子組件觸發(fā)事件給父組件,這篇文章主要介紹了vue中@click綁定事件點(diǎn)擊不生效的解決方案,需要的朋友可以參考下
    2022-12-12
  • Vue 使用計(jì)時(shí)器實(shí)現(xiàn)跑馬燈效果的實(shí)例代碼

    Vue 使用計(jì)時(shí)器實(shí)現(xiàn)跑馬燈效果的實(shí)例代碼

    這篇文章主要介紹了Vue 使用計(jì)時(shí)器實(shí)現(xiàn)跑馬燈效果,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下
    2019-07-07
  • vue webuploader 文件上傳組件開發(fā)

    vue webuploader 文件上傳組件開發(fā)

    本篇文章主要介紹了vue webuploader 文件上傳組件開發(fā),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-09-09
  • Vue頁面反復(fù)刷新的常見問題及解決方案

    Vue頁面反復(fù)刷新的常見問題及解決方案

    Vue.js 是一個(gè)流行的前端框架,旨在通過其響應(yīng)式的數(shù)據(jù)綁定和組件化的開發(fā)模式簡化開發(fā),然而,在開發(fā) Vue.js 應(yīng)用時(shí),頁面反復(fù)刷新的問題可能會(huì)對(duì)用戶體驗(yàn)和開發(fā)效率產(chǎn)生負(fù)面影響,本文將深入探討 Vue 頁面反復(fù)刷新的常見原因,并提供詳細(xì)的解決方案
    2024-09-09

最新評(píng)論