postcss-px2rem vantjs 样式大小显示问题

当postcss-px2rem 的 rootValue  设置为  75 或者 37.5 的时候,

会发现整个都显得特别小

解决办法,postcss.config.js 中如下配置

const AutoPrefixer = require("autoprefixer");
const px2rem = require("postcss-pxtorem");
module.exports = ({ file }) => {
  let remUnit; // 判断条件 请自行调整 我使用的是 mand-mobile ui 没有对vant引入进行测试 
  if (file && file.dirname && file.dirname.indexOf("vant") > -1) { remUnit = 37.5; } else { remUnit = 75; }
  return {
    plugins: [px2rem({ remUnit: remUnit, }),
    AutoPrefixer({ browsers: ["last 20 versions", "android >= 4.0"] })]
  };
}

github  相关问题传送门:https://github.com/youzan/vant/issues/1181

**************************补充*****************************

可能会看到红字 warn

 Replace Autoprefixer browsers option to Browserslist config.
  Use browserslist key in package.json or .browserslistrc file.

  Using browsers option cause some error. Browserslist config 
  can be used for Babel, Autoprefixer, postcss-normalize and other tools.

  If you really need to use option, rename it to overrideBrowserslist.

  Learn more at:
  https://github.com/browserslist/browserslist#readme
  https://twitter.com/browserslist

这是因为 autoprefixer 版本问题导致的,把上面的 browsers 替换为 overrideBrowserslist 就可以了

const AutoPrefixer = require("autoprefixer");
const px2rem = require("postcss-pxtorem");
module.exports = ({ file }) => {
  let remUnit; // 判断条件 请自行调整 我使用的是 mand-mobile ui 没有对vant引入进行测试 
  if (file && file.dirname && file.dirname.indexOf("vant") > -1) { remUnit = 37.5; } else { remUnit = 75; }
  return {
    plugins: [
      px2rem({ remUnit: remUnit, }),
      AutoPrefixer({ overrideBrowserslist: ["last 20 versions", "android >= 4.0"] })]
  };
}

 

©️2020 CSDN 皮肤主题: 数字20 设计师:CSDN官方博客 返回首页