vue3 pxtorem

借助pxtorem实现屏幕自适应

px2rem在vue3中打包会有问题,直接更换至pxtorem就ok

1、导入依赖库

npm install postcss-pxtorem pxtorem-loader --save

2、src/util下添加rem.js文件

// rem等比适配配置文件

// 基准大小

const baseSize = 16

// 设置 rem 函数

function setRem () {

  // 当前页面宽度相对于 1920宽的缩放比例,可根据自己需要修改。

  const scale = document.documentElement.clientWidth / 1920

  // 设置页面根节点字体大小(“Math.min(scale, 2)” 指最高放大比例为2,可根据实际业务需求调整)

  document.documentElement.style.fontSize = baseSize * Math.min(scale, 2) + 'px'

}

// 初始化

setRem()

// 改变窗口大小时重新设置 rem

window.onresize = function () {

  setRem()

}

3、main.js中添加引用

import './util/rem'

4、vue.config.js中添加配置

// 引入等比适配插件

const px2rem = require('postcss-pxtorem')

// 配置基本大小

const postcss = px2rem({

  // 基准大小 baseSize,需要和rem.js中相同

  rootValue: 16,

  propList: ["*"],

})

const { defineConfig } = require('@vue/cli-service')

module.exports = defineConfig({

  transpileDependencies: true,

  lintOnSave: true,

  css: {

    loaderOptions: {

      postcss: {

        postcssOptions: {

          config: false,

          plugins: [

            postcss

          ],

        }

      }

    },

    extract: false

  }

})

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容