vue3+vite+ts自适应实现(postcss-pxtorem)和Echarts图表适配

1.相关依赖下载:

npm install postcss-pxtorem --save
 
npm install amfe-flexible --save

2.在main.ts中引入

import 'amfe-flexible'

3.在vite.config.ts中进行配置

当项目内只需要有UI设计稿这一种基准宽度时,使用下述配置方法

// 引入pxtorem插件
import postCssPxToRem from "postcss-pxtorem";
 
export default defineConfig({
  plugins: [vue()],
  css: {
    postcss: {
      plugins: [
        postCssPxToRem({
          // 配置在将px转化为rem时 1rem等于多少px(因为我们搭配使用了amfe-flexible插件 此处我们需要设置的值应是UI设计稿全屏基准宽度的十分之一)
          // 当UI设计稿的全屏基准宽度是1920px时 此处设置的值为192
          rootValue: 192,
          // 所有px均转化为rem
          propList: ["*"]
          // 若想设置部分样式不转化 可以在配置项中写出
          // eg: 除 border和font-size外 所有px均转化为rem
          // propList: ["*", "!border","!font-size"], 
        })
      ]
    }
  }
})

当项目内引入了vantUI组件库,vant的UI设计稿基准宽度是375px,如果与我们开发时UI给出的设计稿基准宽度不同,使用下述配置方法(移动端有时会引入vant组件库)

// 引入pxtorem插件
import postCssPxToRem from "postcss-pxtorem";
 
export default defineConfig({
  plugins: [vue()],
  css: {
    postcss: {
      plugins: [
        postCssPxToRem({
          // 配置在将px转化为rem时 1rem等于多少px(因为我们搭配使用了amfe-flexible插件 此处我们需要设置的值应是UI设计稿全屏基准宽度的十分之一)
          // 当UI设计稿的全屏基准宽度是750px时 此处设置的值为75 但项目中使用了vant组件库 vant的设计稿总宽度是375px 其十分之一应是37.5(需要区分设置)
          rootValue ({ file }) {
            return file.indexOf('vant') !== -1 ? 37.5 : 75
          },
          // 所有px均转化为rem
          propList: ["*"]
          // 若想设置部分样式不转化 可以在配置项中写出
          // eg: 除 border和font-size外 所有px均转化为rem
          // propList: ["*", "!border","!font-size"], 
        })
      ]
    }
  }
})

Echarts图表适配:

  1. 点开 图表容器及大小 - 概念篇 - 使用手册 - Apache EChartsicon-default.png?t=O83Ahttps://echarts.apache.org/handbook/zh/concepts/chart-size/
  1. 复制图中所框区域放到vue3项目onMounted生命周期里实现图表自适应
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值