postcss-px-to-viewport的include配置不生效问题

1,854 阅读1分钟

include 不生效问题的说明

原因:npm下载的源码中无include配置对应的代码

解决:github上此仓库的index.js文件中是有此配置代码的,可以直接下载此index.js到自己的项目中,比如放到utils文件夹中引入即可

vite.config.js代码示例

import pxtovw from "./src/utils/postcss-px-to-viewport.js";
export default defineConfig({
  plugins: [vue()],
  css: {
    postcss: {
      plugins: [
        pxtovw({
          //这里是设计稿宽度 自己修改
          unitToConvert: "px", // 要转化的单位
          viewportWidth: 1920, // UI设计稿的宽度
          unitPrecision: 6, // 转换后的精度,即小数点位数
          propList: ["*"], // 指定转换的css属性的单位,*代表全部css属性的单位都进行转换
          viewportUnit: "vw", // 指定需要转换成的视窗单位,默认vw
          fontViewportUnit: "vw", // 指定字体需要转换成的视窗单位,默认vw
          selectorBlackList: [], // 指定不转换为视窗单位的类名,
          minPixelValue: 12, // 默认值1,小于或等于1px则不进行转换
          mediaQuery: true, // 是否在媒体查询的css代码中也进行转换,默认false
          replace: true, // 是否转换后直接更换属性值
          exclude: [/node_modules/], // 设置忽略文件,用正则做目录名匹配
          include: [/\/test1/],
          landscape: false, // 是否处理横屏情况
        }),
      ],
    },
  },
});

以下为源码index.js截图对比(可忽略): github:

image.png npm下载的node_modules:

image.png

下图为配置好后的效果对比(可忽略):

image.png