vue 出现data-v-xxx的原因及解决


Posted in Javascript onAugust 04, 2020

现象:

在Vue开发中,会遇到html被浏览器解析后,在标签中出现'data-v-xxxxx'标记,如下:

<div data-v-fcba8876 class="xxx"> aaa</div>

原因:

来看官方解释:

<style scoped>
 @media (min-width: 250px) {
  .list-container:hover {
   background: orange;
  }
 }
</style>

The optional scoped attribute automatically scopes this CSS to your component by adding a unique attribute (such as data-v-21e5b78) to elements and compiling .list-container:hover to something like .list-container[data-v-21e5b78]:hover.

本人理解:

这是在标记vue文件中css时使用scoped标记产生的,因为要保证各文件中的css不相互影响,给每个component都做了唯一的标记,所以每引入一个component就会出现一个新的'data-v-xxx'标记

补充知识:vue---获取元素额外生成的data-v-xxx

vue 出现data-v-xxx的原因及解决

需求描述:由于样式中使用了scoped,所以编译后标签对中生成data-v-xxx属性。在【.dialog_content】的div中 动态添加元素节点p和span时,也需要给元素节点添加data-v-xxx属性。由于data-v-xxx属性是会变化的,那如何获取它,添加在动态添加的元素节点中呢?本博客将给出解决方案。

【解决方法】

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

设置属性【nodeP.setAttribute(dataV, "")】

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

【补充知识】

当 <style> 标签有 scoped 属性时,它的 CSS 只作用于当前组件中的元素。编译时将生成data-v-xxx属性,如下的“data-v-2bc3d899”就是因为加了scoped.

<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 后,父组件的样式将不会渗透到子组件中。不过一个子组件的根节点会同时受其父组件的 scoped CSS 和子组件的 scoped CSS 的影响。这样设计是为了让父组件可以从布局的角度出发,调整其子组件根元素的样式。

深度作用选择器:

如果希望 scoped 样式中的一个选择器能够作用得“更深”,例如影响子组件,可以使用 >>> 操作符:

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

上述代码被编译为:

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

以上这篇vue 出现data-v-xxx的原因及解决就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Ext.MessageBox工具类简介
Dec 10 Javascript
JavaScript高级程序设计 阅读笔记(十三) js定义类或对象
Aug 14 Javascript
自己写了一个展开和收起的多更能型的js效果
Mar 05 Javascript
html组件不可输入(只读)同时任何组件都有效
Apr 01 Javascript
javascript实现俄罗斯方块游戏的思路和方法
Apr 27 Javascript
复杂的javascript窗口分帧解析
Feb 19 Javascript
JS Ajax请求如何防止重复提交
Jun 13 Javascript
使用Ajax与服务器(JSON)通信实例
Nov 04 Javascript
express+vue+mongodb+session 实现注册登录功能
Dec 06 Javascript
微信小程序实现元素渐入渐出动画效果封装方法
May 18 Javascript
解决antd datepicker 获取时间默认少8个小时的问题
Oct 29 Javascript
Canvas三种动态画圆实现方法说明(小结)
Apr 16 Javascript
elementui更改el-dialog关闭按钮的图标d的示例代码
Aug 04 #Javascript
vue 实现根据data中的属性值来设置不同的样式
Aug 04 #Javascript
解决Vue中使用keepAlive不缓存问题
Aug 04 #Javascript
vue根据条件不同显示不同按钮的操作
Aug 04 #Javascript
如何在Vue.JS中使用图标组件
Aug 04 #Javascript
如何构建 vue-ssr 项目的方法步骤
Aug 04 #Javascript
vue-quill-editor的使用及个性化定制操作
Aug 04 #Javascript
You might like
php中flush()、ob_flush()、ob_end_flush()的区别介绍
2013/02/17 PHP
简单了解WordPress开发中update_option()函数的用法
2016/01/11 PHP
php实现每日签到功能
2018/11/29 PHP
XmlUtils JS操作XML工具类
2009/10/01 Javascript
基于jQuery实现下拉框
2014/11/24 Javascript
在JS方法中返回多个值的方法汇总
2015/05/20 Javascript
js实现的倒计时按钮实例
2015/06/24 Javascript
jQuery垂直多级导航菜单代码分享
2015/08/18 Javascript
ztree获取选中节点时不能进入可视区域出现BUG如何解决
2015/12/03 Javascript
一种Javascript解释ajax返回的json的好方法(推荐)
2016/06/02 Javascript
JS实现兼容各种浏览器的获取选择文本的方法【测试可用】
2016/06/21 Javascript
第一篇初识bootstrap
2016/06/21 Javascript
读Javascript高性能编程重点笔记
2016/12/21 Javascript
Bootstrap如何激活导航状态
2017/03/22 Javascript
基于javascript的异步编程实例详解
2017/04/10 Javascript
微信小程序实现获取用户信息并存入数据库操作示例
2019/05/07 Javascript
JavaScript onclick事件使用方法详解
2020/05/15 Javascript
原生js实现日期选择插件
2020/05/21 Javascript
Vue实现跑马灯效果
2020/05/25 Javascript
Javascript数组及类数组相关原理详解
2020/10/29 Javascript
JavaScript动态生成表格的示例
2020/11/02 Javascript
python将字典内容存入mysql实例代码
2018/01/18 Python
Python 查找字符在字符串中的位置实例
2018/05/02 Python
Python3.4学习笔记之类型判断,异常处理,终止程序操作小结
2019/03/01 Python
python实现文件的分割与合并
2019/08/29 Python
Python pandas.DataFrame 找出有空值的行
2019/09/09 Python
python爬虫泛滥的解决方法详解
2020/11/25 Python
纯CSS3制作的鼠标悬停时边框旋转
2017/01/03 HTML / CSS
New delete 与malloc free 的联系与区别
2013/02/04 面试题
人力资源部培训专员岗位职责
2014/01/02 职场文书
企业给企业的表扬信
2014/01/13 职场文书
初三学习计划书范文
2014/04/30 职场文书
党员个人对照检查材料范文
2014/09/24 职场文书
大三学年自我鉴定范文(3篇)
2014/09/28 职场文书
课程设计感想范文
2015/08/11 职场文书
详细聊聊Oracle表碎片对性能有多大的影响
2022/03/19 Oracle