在开发过程中遇到了需要用到picker的表单填报的功能块,弹出的选择框会出现比例错误的问题,项目主要用到的组件库是Zarm,配合postcss-px-to-viewport进行开发,对于出现这样的问题的解决方案参考如下:
移动端布局之postcss-px-to-viewport(兼容vant)
如果读取的是vant、zarm相关的文件,viewportWidth 就设为375,如果是其他的文件,我们就按照我们UI的宽度来设置viewportWidth ,即750。
改写postcss.config.js 文件配置如下:
const path = require('path');
module.exports = ({ file }) => {
const designWidth = file.dirname.includes(path.join('node_modules', 'Zarm')) ? 375 : 750;
return {
plugins: {
autoprefixer: {},
"postcss-px-to-viewport": {
unitToConvert: "px",
viewportWidth: designWidth,
unitPrecision: 6,
propList: ["*"],
viewportUnit: "vw",
fontViewportUnit: "vw",
selectorBlackList: [],
minPixelValue: 1,
mediaQuery: true,
exclude: [],
landscape: false
}
}
}
}
/*
*注意:这里使用path.join('node_modules', 'vant')是因为适应不同的操作系统,
*在mac下结果为node_modules/vant,而在windows下结果为node_modules\vant
*/
|