解决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 相关文章推荐
javascript full screen 全屏显示页面元素的方法
Sep 27 Javascript
jquery实现美观的导航菜单鼠标提示特效代码
Sep 06 Javascript
javascript设计模式--策略模式之输入验证
Nov 27 Javascript
js实现的简单图片浮动效果完整实例
May 10 Javascript
全面解析JavaScript里的循环方法之forEach,for-in,for-of
Apr 20 Javascript
JS实现DIV高度自适应窗口示例
Feb 16 Javascript
基于JavaScript中字符串的match与replace方法(详解)
Dec 04 Javascript
Javascript将图片的绝对路径转换为base64编码的方法
Jan 11 Javascript
vue2 全局变量的设置方法
Mar 09 Javascript
vue+vant-UI框架实现购物车的复选框全选和反选功能
Nov 05 Javascript
精读《Vue3.0 Function API》
May 20 Javascript
Vue实现指令式动态追加小球动画组件的步骤
Dec 18 Vue.js
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
使用array mutisort 实现按某字段对数据排序
2013/06/18 PHP
PHP生成随机数的方法实例分析
2015/01/22 PHP
PHP中如何使用session实现保存用户登录信息
2015/10/20 PHP
Javascript Math对象
2009/08/13 Javascript
在IE下获取object(ActiveX)的Param的代码
2009/09/15 Javascript
javascript 面向对象编程  function是方法(函数)
2009/09/17 Javascript
javascript中的if语句使用介绍
2013/11/20 Javascript
JS实现网页滚动条感应鼠标变色的方法
2015/02/26 Javascript
JQuery实现级联下拉框效果实例讲解
2015/09/17 Javascript
Node.js中JavaScript操作MySQL的常用方法整理
2016/03/01 Javascript
Bootstrap实现下拉菜单效果
2016/04/29 Javascript
js鼠标单击和双击事件冲突问题的快速解决方法
2016/07/11 Javascript
JS匿名函数实例分析
2016/11/26 Javascript
通过js给网页加上水印背景实例
2019/06/17 Javascript
vue 使用 v-model 双向绑定父子组件的值遇见的问题及解决方案
2021/03/01 Vue.js
浅谈python为什么不需要三目运算符和switch
2016/06/17 Python
python 识别图片中的文字信息方法
2018/05/10 Python
Python爬虫框架scrapy实现downloader_middleware设置proxy代理功能示例
2018/08/04 Python
基于python实现名片管理系统
2018/11/30 Python
python3+selenium实现qq邮箱登陆并发送邮件功能
2019/01/23 Python
24式加速你的Python(小结)
2019/06/13 Python
python实现监控阿里云账户余额功能
2019/12/16 Python
python next()和iter()函数原理解析
2020/02/07 Python
python图片指定区域替换img.paste函数的使用
2020/04/09 Python
Shopee印度尼西亚:东南亚与台湾市场最大电商平台
2018/06/17 全球购物
欧姆龙医疗欧洲有限公司:Omron Healthcare Europe B.V
2020/06/13 全球购物
职业教育毕业生求职信
2013/11/09 职场文书
外企财务年会演讲稿
2014/01/03 职场文书
《金色的脚印》教后反思
2014/04/23 职场文书
我的理想演讲稿
2014/04/30 职场文书
文员求职信
2014/07/15 职场文书
施工安全责任书范本
2014/07/24 职场文书
2014年政风行风自查自纠报告
2014/10/21 职场文书
ktv服务员岗位职责
2015/02/09 职场文书
Python获取指定日期是"星期几"的6种方法
2022/03/13 Python
gtx1650怎么样 gtx1650显卡相当于什么级别
2022/04/08 数码科技