vue2和vue3+vite使用vw或者rem进行移动端适配

安装插件进行移动端适配

这个是vue2项目的方式

VW方案适配

  • 先把vue脚手架升级到最新

    npm i -g @vue/cli@latest

  • 安装 postcss-px2vp

    npm i -D postcss-px2vp

  • 插件安装完成后,创建一个和vue.config.js同级的文件,名称为:postcss.config.js,在里面输入如下内容:

    module.exports = {
    plugins: {
    ‘postcss-px2vp’: {
    viewportWidth(rule){
    // 如果设计稿宽度是 750px + 使用 Vant
    const file = rule.source?.input.file
    return file?.includes(‘vant’)?375:750
    },
    // viewportWidth: 750, //如果设计稿宽度是 750px + 不使用 Vant
    // viewportWidth: 375, //如果设计稿宽度是 375px + 无论是否使用 Vant
    /**
    * 下面是设置那些不进行转换的,字体,行高不转换,
    * 如果想要字体也抓转换的话,就改成 [“*”], 这样
    *
    * ** /
    ​ propList: ["
    "],
    ​ }
    ​ }
    }

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

rem适配

  • 第一步安装 lib-flexible

    第一步: npm i lib-flexible --save

    第二布:在man.js文件中写入 import ‘lib-flexible’

  • 第二步安装 postcss-pxtorem

    第一步: npm i postcss-pxtorem --save-dev

  • 第三步:插件安装完成后,创建一个和vue.config.js同级的文件,名称为:postcss.config.js,在里面输入如下内容:

    module.exports = {
    plugins: {
    ‘postcss-pxtorem’: {
    rootValue({ file }) {
    // 如果设计稿宽度是 750px + 使用 Vant
    return file.indexOf(‘vant’) !== -1 ? 37.5 : 75
    },
    //rootValue:75 //如果设计稿宽度是 750px + 不使用 Vant
    //rootValue:37.5 //如果设计稿宽度是 375px + 无论是否使用 Vant
    /**
    * 下面是设置那些不进行转换的,字体,行高不转换,
    * 如果想要字体也抓转换的话,就改成 [“*”], 这样
    *
    * ** /
    ​ propList: ["
    "],
    ​ }
    ​ }
    }

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

记得看跟字体有没有变成rem

  • 把下面代码放到页面,观察字体大小和盒子大小是不是跟随变化
<template>
 <div class="home">
   6666,这个页面是否有内容6666,这个页面是否有内容6666,这个页面是否有内容
   <div class="box">我是一个盒子</div>
 </div>
</template>

<style scoped>
.home{
 width: 100%;
 height: 100%;
 background-color: #ebc5c5;

 font-size: 15px;
}
.box {
   width: 130px;
   height: 130px;
   background-color: aquamarine;
 }
</style>
 

要是看不得就看这个网址:http://doc.bufanui.com/docs/yidongduankaifa/yidongduankaifa-1edc4uphofgb8

这个是vue3+vite的方式

rem适配

  • 第一步安装 lib-flexible

    第一步: npm i lib-flexible --save

    第二布:在man.js文件中写入 import ‘lib-flexible’

  • 第二步安装 postcss-pxtorem

    第一步: npm i postcss-pxtorem --save-dev

  • 第三步:插件安装完成后,在vite.config.js的文件在里面输入如下内容:

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import postCssPxToRem from "postcss-pxtorem"

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [vue()],
  css: {
    postcss: {
      plugins: [
        postCssPxToRem({
          // rootValue: 37.5, // 设计图最大宽度除以10  //比如750的宽就写成75  我这边是1125的宽
          rootValue ({ file }) {
            return file.indexOf('vant') !== -1 ? 37.5 : 75
          },
          propList: ['*'],
        })
      ]
    }
  }
})

在这里插入图片描述

vw的vue3+vitet移动适配

和vue2项目一样先 npm 安装: npm i -D postcss-px2vp
然后在 vite.config文件里面写,这点与vue2不同

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import postCssPx2vp from "postcss-px2vp"
export default defineConfig({
  plugins: [vue()],
  css: {
    postcss: {
      plugins: [
        postCssPx2vp({
          viewportWidth(rule){
            // 如果设计稿宽度是 750px + 使用 Vant
            const file = rule.source?.input.file
            return file?.includes('vant')?375:750
        },
          propList: ['*'],
        })
      ]
    }
  }
})

在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

曾不错吖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值