方案一:
1. 下载依赖
npm install postcss-import postcss-loader postcss-px-to-viewport --save-dev
npm install postcss-px-to-viewport-opt
2. 根目录下新建postcss.config.js,配置如下
module.exports = {
plugins: {
'autoprefixer': {
path: ['./src/*']
},
'postcss-import': {},
'postcss-px-to-viewport-opt': {
'viewportWidth': '1920',
'viewportHeight': '1080',
'unitPrecision': 4,
'viewportUnit': 'vw',
'selectorBlackList': ['#nprogress'],
'minPixelValue': 1,
'mediaQuery': false,
'exclude': /(\/|\\)(node_modules)(\/|\\)/,
'include': ['src/views/webgl/DashBoard.vue']
}
}
};
附: 网上找的其他的配置,可以参考里边的忽略文件写法,不得不夸一下,掘金的复制粘贴功能很好用
module.exports = {
plugins: {
'postcss-px-to-viewport': {
unitToConvert: 'px',
viewportWidth: 375,
viewportHeight: 1334,
unitPrecision: 13,
propList: ['*'],
viewportUnit: 'vw',
fontViewportUnit: 'vw',
selectorBlackList: ['.ignore-', '.hairlines'],
minPixelValue: 1,
mediaQuery: false,
replace: true,
exclude: [
/RightBar/,
/gotop.vue/,
],
landscape: false,
landscapeUnit: 'vw',
landscapeWidth: 1134
}
}
}
3.首先声明我的vue-cli中package-lock.json写的webpack版本是4.28.4,看一下package.json,一般安装报错Error: true is not a PostCSS plugin时候,可以加这个到package.json里解决
"peerDependencies": {
"postcss": "^8.0.0"
},
方案二:
1.安装
npm i postcss-px-to-viewport -D
2. vue.config.js中配置postcss节点,优先级最高
const pxtovw = require('postcss-px-to-viewport');
module.exports={
css:{
loaderOptions:{
sass:{
},
css:{
},
postcss:{
plugins:[
new pxtovw({
unitToConvert: 'px',
viewportWidth: 375,
unitPrecision: 5,
propList: ['*'],
viewportUnit: 'vw',
fontViewportUnit: 'vw',
selectorBlackList: [],
minPixelValue: 1,
mediaQuery: false,
replace: true,
exclude: [/node_modules/]
})
]
}
}
}
}
注意
package.json文件中postcss节点的配置,优先级中
postcss.config.js外置配置文件,优先级最低
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决