当前位置: 代码网 > it编程>前端脚本>Vue.js > vue中各种deep的区别解析

vue中各种deep的区别解析

2024年10月27日 Vue.js 我要评论
一共,::v-deep、::deep 和 :deep(),>>>,/deep/从vue 3开始,推荐使用 ::deep 而不是 ::v-deep1. ::v-deep::v-deep

一共,::v-deep、::deep 和 :deep(),>>>,/deep/
从vue 3开始,推荐使用 ::deep 而不是 ::v-deep

1. ::v-deep

::v-deep 是 vue 2 中引入的深度选择器,在 vue 3 中仍然可用,但不再是推荐的写法。它用于穿透作用域,将样式应用到子组件的元素上。

示例

<template>
  <div class="parent">
    <childcomponent />
  </div>
</template>
<script setup>
import childcomponent from './childcomponent.vue';
</script>
<style scoped>
.parent ::v-deep .child-class {
  color: red;
}
</style>

2. ::deep

::deep 是 vue 3 中推荐的深度选择器。它与 ::v-deep 功能相同,但语法更简洁。

示例

<template>
  <div class="parent">
    <childcomponent />
  </div>
</template>
<script setup>
import childcomponent from './childcomponent.vue';
</script>
<style scoped>
.parent ::deep .child-class {
  color: red;
}
</style>

3. :deep()

:deep() 是 vue 3 中推荐的另一种深度选择器。它是一个伪类,可以嵌套在其他选择器中使用,提供了更灵活的语法。

示例

<template>
  <div class="parent">
    <childcomponent />
  </div>
</template>
<script setup>
import childcomponent from './childcomponent.vue';
</script>
<style scoped>
.parent :deep(.child-class) {
  color: red;
}
</style>

4 . >>>

在早期版本的vue.js中,>>> 也被用来作为深度选择器。它的用法与 ::v-deep 类似,但是现在已经被 ::v-deep 或 ::deep 所取代。
示例:

.parent-class >>> .child-class {
  color: blue;
}

5. /deep/

/deep/ 也是早期vue.js版本中的一个深度选择器。不过,随着vue 2.6.0的发布,官方建议使用 ::v-deep 替代 /deep/。在某些情况下,特别是在使用某些构建工具或配置时,/deep/ 可能仍然有效,但并不推荐继续使用。
示例:

.parent-class /deep/ .child-class {
  color: green;
}

到此这篇关于vue中各种deep的区别的文章就介绍到这了,更多相关vue deep区别内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com