vue-cli3+px轉rem+vant


1.安裝lib-flexible(用於設置 rem 基准值)

npm i -S amfe-flexible

2.在main.js文件中引入lib-flexible

import 'amfe-flexible'

3、安裝postcss-pxtorem(postcss-pxtorem是一款 postcss 插件,用於將單位轉化為 rem)

npm install postcss-pxtorem --save-dev

4、在public/index.html加入meta標簽

<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no">

5.vue.config.js添加:

const autoprefixer = require('autoprefixer');
const pxtorem = require('postcss-pxtorem');
 
module.exports = {
    css: {
        loaderOptions: {
        postcss: {
            plugins: [
            autoprefixer(),
            pxtorem({
                rootValue: 75,
                propList: ['*'],
                "selectorBlackList":["van-"]   //排除vant框架相關組件
            })
            ]
        }
        }
    }
};

6.在根目錄下新建postcss.config.js,內容為:

const autoprefixer = require('autoprefixer');
const pxtorem = require('postcss-pxtorem');
module.exports = ({ file }) => {
    let remUnit
    if (file && file.dirname && file.dirname.indexOf('vant') > -1) {
        remUnit = 37.5
    } else {
        remUnit = 75
    }
    return {
        plugins: [
            autoprefixer(),
            pxtorem({
                rootValue: remUnit,
                propList: ['*'],
                selectorBlackList: ['van-circle__layer']
            })
        ]
    }
}    

注:動態設置rootValue的大小,即對於vant-ui框架的組件 將rootValue設置成37.5,對於我們自己的750寬度的設計稿的將rootValue設置成75

可參考:https://www.cnblogs.com/wuqun/p/12084304.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM