事情的经过是这样的,本波煮最近在写一个项目。需要把一个大项目的某一块功能做成一个特别的项目。然后同事说直接迁过来,不用全部重新写。然后我就在gitee上随便找了一个看起来还不错的vue2+vant的初始模板。项目迁移过来后。波煮还没发现端倪,结果想要正式一点,于是把拉下的模板项目文件夹名称修改后,波煮再次运行项目,就发现适配出现问题了。但是波煮也是大吃一惊,没想到修改项目文件夹名称还会影响效果,真实闻所未闻。波煮最后闻着味,找到了一个文件。
// postcss.config.js
module.exports = {
plugins: {
autoprefixer: {
overrideBrowserslist: ['Android 4.1', 'iOS 7.1', 'Chrome > 31', 'ff > 31', 'ie >= 8']
},
'postcss-pxtorem': {
rootValue({ file }) {
return file.indexOf('vant') !== -1 ? 37.5 : 75
},
propList: ['*']
}
}
}
拉下来的模板名称叫:vue-vant-template
最后查了资料才知道,rootValue 为函数的时候,参数 file 是样式的绝对路径,正好项目名称叫 vue-vant-template 所以样式都是正常。等到波煮把名称换成别的之后,绝对路径就没有 vant 这个字符了。所以 rootValue 的值变成 75 了。最后波煮的修改效果如下:
// postcss.config.js
module.exports = {
plugins: {
autoprefixer: {
overrideBrowserslist: ['Android 4.1', 'iOS 7.1', 'Chrome > 31', 'ff > 31', 'ie >= 8']
},
'postcss-pxtorem': {
rootValue: 37.5,
propList: ['*']
}
}
}
大家看了我这个问题后以后就不会踩坑了 !