解决vue加scoped后就无法修改vant的UI组件的样式问题


Posted in Javascript onSeptember 07, 2020

有时候UI组件提供的默认的样式不能满足项目的需要,就需要我们对它的样式进行修改,但是发现加了scoped后修改的样式不起作用。

解决方法:

使用深度选择器,将scoped样式中的选择器“深入”,即影响子组件

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

以上的代码会编译成:

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

注意:如果你使用了Less或Sass等预处理器,可能无法>>>正确解析。在这些情况下,您可以使用组合/deep/或::v-deep组合 - 两者都是别名,>>>并且工作完全相同。

使用Less或Sass等预处理器的写法如下:

.van-radio {
 /deep/ .van-radio__label {
  width: 500px;
 }
}

补充知识:vue+vant移动端遇到的那些问题

1、项目引用了lib-flexible 跟px2rem-loader做适配,然后真机测试的时候发现字体在手机上显示的很小。【推荐去看下px2rem-loader的文档】

原因+解决:百度说应该在后面加上/*px*/(font-size:14px;/*px*/),这里这么设置时,字体的大小要为两倍,如你想让字体显示为14px,css代码则为【font-size:28px;/*px*/】,对于border这些不想转换为rem的(或者说没必要转换的),在后面加上/*no*/;

2、使用vant组件时发现样式什么的跟vant官网的demo天差地别

原因+解决:是引入的适配框架把单位都给转换成rem了,所以gg了,自己调整样式就好了

3、页面写style用了scoped,调整vant组件样式的时候,不起作用【这里涉及了vue最重要的点:父子组件,半吊子的我完全没吃透父子关系】

原因+解决:scoped的作用是让样式应用于当前页,不影响其他的页面的样式,而当你用了vant组件想调整它的组件样式时,这个组件是子组件,因为你用了scoped,所以影响不到它,这个时候你应该使用deep——深入选择器,下图就是用法,如果你用了less或者sass这些,写法请自行百度!!!(本人略怂,不敢在项目赶得时候用太多不熟的东西),当然啦,你也可以任性的在公共css样式文件里写,我说的就跟你没半毛钱关系了,谨防被打死就好!

解决vue加scoped后就无法修改vant的UI组件的样式问题

4、使用了vant的搜索组件,然后在ios上测试时发现,input框被放大了

原因+解决:在index.html的头部加上"maximum-scale=1.0, user-scalable=0",禁止它放大

<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport" />

5、vant的组件,我是按需引入的,在main.js中引入,使用toast组件时,引用了,直接在要用的页面的方法里this.$toast()这样就可以,然后使用vant的图片预览组件的时候以为这样也可以,结果gg,发现直接在页面上引入,照着文档那样写就可以。

原因+解决:仔细对比了toast跟imagePreview的文档介绍,发现toast是有介绍说它挂载到了vue上。。。emmmm,imagePreview怕是没挂载,挂载上去之后就可以用了

解决vue加scoped后就无法修改vant的UI组件的样式问题

6、 跳转页面时标题名没切换,比如首页跳到联系页,页面头部还是首页【看Vue Router文档】

原因+解决:因为我没做什么修改操作,所以不会变。在路由router/index.js中对路由配置 meta 字段,再在main.js中使用全局前置守卫

解决vue加scoped后就无法修改vant的UI组件的样式问题

router.beforeEach((to, from, next) => {
 //修改标题
 if (to.meta.title) {
  document.title = to.meta.title;
 }
 next();
});

第一次将自己自学的东西应用到项目中,新项目开始,自己作为项目中唯一的前端,不怕死的用了vue,其实也是个半吊子,现在一期开发结束,总结下这些遇到的问题,可能很基础,但是毕竟是自己遇到的,还是要记录下来的!

以上这篇解决vue加scoped后就无法修改vant的UI组件的样式问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
浅析tr的隐藏和显示问题
Mar 05 Javascript
js简单实现交换Li的值
May 22 Javascript
EasyUI中实现form表单提交的示例分享
Mar 01 Javascript
Jquery幻灯片特效代码分享--打开页面随机选择切换方式(3)
Aug 15 Javascript
基于JS实现仿百度百家主页的轮播图效果
Mar 06 Javascript
vue.extend实现alert模态框弹窗组件
Apr 28 Javascript
React+Webpack快速上手指南(小结)
Aug 15 Javascript
在Vue-cli里应用Vuex的state和mutations方法
Sep 16 Javascript
详解基于iview-ui的导航栏路径(面包屑)配置
Feb 22 Javascript
JavaScript setInterval()与setTimeout()计时器
Dec 27 Javascript
微信小程序轮播图swiper代码详解
Dec 01 Javascript
游戏开发中如何使用CocosCreator进行音效处理
Apr 14 Javascript
Vue.js原理分析之nextTick实现详解
Sep 07 #Javascript
小程序实现可拖动的悬浮按钮
Sep 07 #Javascript
vue 修改 data 数据问题并实时显示操作
Sep 07 #Javascript
nginx部署多个vue项目的方法示例
Sep 06 #Javascript
js实现简单的无缝轮播效果
Sep 05 #Javascript
JS+CSS实现炫酷光感效果
Sep 05 #Javascript
js实现炫酷光感效果
Sep 05 #Javascript
You might like
别人整理的服务器变量:$_SERVER
2006/10/20 PHP
php文件怎么打开 如何执行php文件
2011/12/21 PHP
php中判断数组是一维,二维,还是多维的解决方法
2013/05/04 PHP
destoon实现不同会员组公司名称显示不同的颜色的方法
2014/08/22 PHP
PHP生成唯一ID之SnowFlake算法
2016/12/17 PHP
excel操作之Add Data to a Spreadsheet Cell
2007/06/12 Javascript
Mootools 1.2教程 类(一)
2009/09/15 Javascript
javascript控制swfObject应用介绍
2012/11/29 Javascript
Windows 系统下安装和部署Egret的开发环境
2014/07/31 Javascript
PHP中使用微秒计算脚本执行时间例子
2014/11/19 Javascript
JS模拟键盘打字效果的方法
2015/08/05 Javascript
详解基于Bootstrap扁平化的后台框架Ace
2015/11/27 Javascript
基于jQuery实现左侧菜单栏可折叠功能
2016/12/27 Javascript
vue的基本用法与常见指令
2017/08/15 Javascript
浅谈函数调用的不同方式,以及this的指向
2017/09/17 Javascript
深入理解requireJS-实现一个简单的模块加载器
2018/01/15 Javascript
详解jQuery获取特殊属性的值以及设置内容
2018/11/14 jQuery
简单学习5种处理Vue.js异常的方法
2019/06/17 Javascript
[56:46]2018DOTA2亚洲邀请赛 3.31 小组赛 B组 VP vs Effect
2018/04/01 DOTA
[01:05:59]Mineski vs Secret 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.22
2019/09/05 DOTA
利用Python脚本实现ping百度和google的方法
2017/01/24 Python
python使用matplotlib绘制柱状图教程
2017/02/08 Python
深入理解python中函数传递参数是值传递还是引用传递
2017/11/07 Python
python网络爬虫学习笔记(1)
2018/04/09 Python
pandas的to_datetime时间转换使用及学习心得
2019/08/11 Python
详解python中index()、find()方法
2019/08/29 Python
哪些情况下不应该使用索引
2015/07/20 面试题
公司综合部的成员自我评价分享
2013/11/05 职场文书
生日寿宴答谢词
2014/01/19 职场文书
高一英语教学反思
2014/01/22 职场文书
药店主任岗位责任制
2014/02/10 职场文书
创业融资计划书
2014/04/25 职场文书
法定授权委托证明书
2014/09/27 职场文书
个人作风纪律整顿整改措施
2014/10/25 职场文书
小学生差生评语
2014/12/29 职场文书
2016暑期校本培训心得体会
2016/01/08 职场文书