欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

vue cli项目px转换成rem(包括大屏适配)

程序员文章站 2022-04-11 11:49:52
...

一. vue cli px ==> rem

1 安装计算工具和转换工具

npm install lib-flexible --save-dev 
npm install postcss-pxtorem --save-dev  

2 在 main.js 中引入 lib-flexible

import 'lib-flexible'

3 配置 package.json
postcss-pxtorem
参数文档 具体有啥要求可以去参数文档查看 如不想让element 和vant组件转换成rem 保留px增加selectorBlackList内容

"postcss-pxtorem": {
    "rootValue": 37.5,// 以设计稿 375 为例, 375 / 10 = 37.5   //vant 组件就是37.5的计算 若是用vant 开发移动端最好设计和使用 375的宽度
    "selectorBlackList": [
      "el-","van"
    ],
    "propList": [
      "*"
    ]

}

二.大屏的适配大屏计算

上面的一套也可以使用 只要去更改 lib-flexible即可
文件位置:

./node_modules/lib-flexible/flexible.js

源码:

function refreshRem(){
  var width = docEl.getBoundingClientRect().width;
  if (width / dpr > 540) {
      width = 540 * dpr;
  }
  var rem = width / 10;
  docEl.style.fontSize = rem + 'px';
  flexible.rem = win.rem = rem;
}
//更改为
function refreshRem(){
  var width = docEl.getBoundingClientRect().width;
  if (width / dpr < 1920) {
      width = 1920* dpr;
  } else if (width / dpr > 5760) {
      width = 5760 * dpr;  // 5760是你需要适配的宽度  稍微更改下这点的if else 换成你需要适配的尺寸
  }
  var rem = width / 10;
  docEl.style.fontSize = rem + 'px';
  flexible.rem = win.rem = rem;
}


相关标签: js vue