npm install postcss-px2rem px2rem-loader –save

在根目录src中新建utils目录下新建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()// 改变窗口大小时重新设置 remwindow.onresize = function () {setRem()}

3、在main.js中引入适配文件

import "./utils/rem.js"; // 自适应分辨率

4、到vue.config.js中配置插件

// 引入等比适配插件const px2rem = require('postcss-px2rem')// 配置基本大小const postcss = px2rem({// 基准大小 baseSize,需要和rem.js中相同remUnit: 16})// 使用等比适配插件module.exports = {lintOnSave: true,css: {loaderOptions: {postcss: {plugins: [postcss]}}}}

*********************************** 第二种(大屏可用)***********************************

在外层文件中(包含所有的子组件)

onWindowResize() {const w = 1920const h = 1080const scaleW = document.body.clientWidth / wconst scaleH = document.body.clientHeight / hconst appDom = document.querySelector(".main") || nullconsole.log(appDom)appDom.style.cssText = `transform: scale(${scaleW})`// appDom.style.cssText = `transform: scale(${scaleW}, ${scaleH})`;} mounted() {this.onWindowResize()setTimeout(() => {this.onWindowResize()}, 100)}, created() {// 设置每隔 3minute 更新页面数据window.setInterval(() => {this.timer = setTimeout(() => {this.reLoadPage();}, 0)}, 1000 * 60 * 3);window.addEventListener('resize', this.onWindowResize)},destroyed() {window.removeEventListener('resize', this.onWindowResize)}