当前位置: 首页 > Web前端 > HTML5

vue中使用第三方UI库的mobilerem适配解决方案

时间:2023-04-05 21:36:28 HTML5

需求:在使用vue-cli脚手架搭建项目时,使用了第三方UI库(如vant,mintui),因为第三-party库使用的都是px单位,不能使用rem适配不同设备的屏幕。解决方法:使用px2rem-loader插件将第三方ui库的px转换成rem单位。(1)npminstallpx2rem-loader--save-dev安装插件(2)然后在vue-cli项目中找到built/utils文件,在里面添加如下代码:varpx2remLoader={loader:'px2rem-loader',options:{remUnit:75//(这里表示设计稿的宽度为750/10)}}然后在generateLoaders函数中插入px2remLoader,然后重启npmrundev服务。(3)px转rem配置完成后,需要在入口文件(main.js)配置一段代码。这段代码的目的是监听window窗口大小的变化,从而动态改变html根节点的font-size的大小。达到适配不同设备的效果;(注意:如果不知道为什么要动态改变html根节点的font-size,建议阅读rem的知识)window.onresize=setHtmlFontSize;functionsetHtmlFontSize(){consthtmlWidth=document.文档元素.clientWidth||文档.body.clientWidth;consthtmlDom=document.getElementsByTagName('html')[0];htmlDom.style.fontSize=htmlWidth/10+'px';};setHtmlFontSize();以上代码是为了在第一次加载main.js时,设置根节点(html节点)的font-size.否则会出现一个混乱的页面。