您好,欢迎来到化拓教育网。
搜索
您的当前位置:首页Vue中的scoped的实现原理以及scoped穿透的用法(附代码)

Vue中的scoped的实现原理以及scoped穿透的用法(附代码)

来源:化拓教育网


  1. 给HTML的dom节点添加一个不重复的data属性(例如: data-v-5558831a)来唯一标识这个dom 元素

  2. 在每句css选择器的末尾(编译后生成的css语句)加一个当前组件的data属性选择器(例如:[data-v-5558831a])来私有化样式

3.scoped穿透

scoped看起来很好用,当时在Vue项目中,当我们引入第三方组件库时(如使用vue-awesome-swiper实现移动端轮播),需要在局部组件中修改第三方组件库的样式,而又不想去除scoped属性造成组件之间的样式覆盖。这时我们可以通过特殊的方式穿透scoped。

stylus的样式穿透 使用>>>
 外层 >>> 第三方组件 
 样式
 
 .wrapper >>> .swiper-pagination-bullet-active
 background: #fff
sass和less的样式穿透 使用/deep/
 外层 /deep/ 第三方组件 {
 样式
 }
 .wrapper /deep/ .swiper-pagination-bullet-active{
 background: #fff;
 }

3.在组件中修改第三方组件库样式的其它方法

上面我们介绍了在使用scoped 属性时,通过scopd穿透的方式修改引入第三方组件库样式的方法,下面我们介绍其它方式来修改引入第三方组件库的样式

在vue组件中不使用scoped属性在vue组建中使用两个style标签,一个加上scoped属性,一个不加scoped属性,把需要覆盖的css样式写在不加scoped属性的style标签里建立一个reset.css(基础全局样式)文件,里面写覆盖的css样式,在入口文件main.js 中引入

相关文章推荐:

Vue实现组件切换的两种方式介绍(附代码)

node服务器如何实现豆瓣数据的获取(代码)

Copyright © 2019- huatuo9.cn 版权所有 赣ICP备2023008801号-1

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务