Vue CLI3移動端適配(px2rem或postcss-plugin-px2rem)
今天,我們使用Vue CLI3 做一個移動端適配 。
前言
首先確定你的項目是Vue CLI3版本以上的。
一、移動端適配包
1、安裝移動端適配包
npm i lib-flexible -S
2、在 main.js 引入適配包
import Vue from ’vue’import App from ’./App.vue’import ’lib-flexible’ // 引入適配包Vue.config.productionTip = falsenew Vue({ render: h => h(App),}).$mount(’#app’)
3、在 index.html 編輯 viewport
<!DOCTYPE html><html lang='en'> <head> <meta charset='utf-8'> <meta http-equiv='X-UA-Compatible' content='IE=edge'> <!-- 加上以下代碼 --> <meta name='viewport' content='width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0'> <link rel='icon' href='http://www.aoyou183.cn/bcjs/<%= BASE_URL %>favicon.ico' rel='external nofollow' > <title><%= htmlWebpackPlugin.options.title %></title> </head> <body> <noscript> <strong>We’re sorry but <%= htmlWebpackPlugin.options.title %> doesn’t work properly without JavaScript enabled. Please enable it to continue.</strong> </noscript> <div id='app'></div> <!-- built files will be auto injected --> </body></html>
二、CSS樣式適配
1、安裝 px2rem-loader 包( 只適用于css樣式 )
npm i px2rem-loader -D
2、在 vue.config.js 配置
module.exports={ chainWebpack: config => { config.module .rule(’css’) .test(/.css$/) .oneOf(’vue’) .resourceQuery(/?vue/) .use(’px2rem’) .loader(’px2rem-loader’) .options({ remUnit: 75 }) },}
三、CSS預處理語言樣式適配
1、安裝 postcss-plugin-px2rem ( 適用于css預處理語言 )
npm i postcss-plugin-px2rem -D
2、在 vue.config.js 配置
module.exports={ css: { loaderOptions: { postcss: { plugins: [ require(’postcss-plugin-px2rem’)({ rootValue: 75, //換算基數, 默認100 ,這樣的話把根標簽的字體規定為1rem為50px,這樣就可以從設計稿上量出多少個px直接在代碼中寫多上px了。 // unitPrecision: 5, //允許REM單位增長到的十進制數字。 //propWhiteList: [], //默認值是一個空數組,這意味著禁用白名單并啟用所有屬性。 // propBlackList: [], //黑名單 exclude: /(node_module)/, //默認false,可以(reg)利用正則表達式排除某些文件夾的方法,例如/(node_module)/如果想把前端UI框架內的px也轉換成rem,請把此屬性設為默認值 // selectorBlackList: [], //要忽略并保留為px的選擇器 // ignoreIdentifier: false, //(boolean/string)忽略單個屬性的方法,啟用ignoreidentifier后,replace將自動設置為true。 // replace: true, // (布爾值)替換包含REM的規則,而不是添加回退。 mediaQuery: false, //(布爾值)允許在媒體查詢中轉換px。 minPixelValue: 3 //設置要替換的最小像素值(3px會被轉rem)。 默認 0 }), ] } } }}
3、在 package.json 配置,加入 postcss 相關插件
{ 'name': 'app', 'version': '0.1.0', 'private': true, 'scripts': { 'serve': 'vue-cli-service serve', 'build': 'vue-cli-service build', 'lint': 'vue-cli-service lint' }, 'dependencies': { 'core-js': '^3.6.4', 'lib-flexible': '^0.3.2', 'vue': '^2.6.11' }, 'devDependencies': { '@vue/cli-plugin-babel': '~4.3.0', '@vue/cli-plugin-eslint': '~4.3.0', '@vue/cli-service': '~4.3.0', 'babel-eslint': '^10.1.0', 'eslint': '^6.7.2', 'eslint-plugin-vue': '^6.2.2', 'node-sass': '^4.14.0', 'postcss-plugin-px2rem': '^0.8.1', 'px2rem-loader': '^0.1.9', 'sass-loader': '^8.0.2', 'vue-template-compiler': '^2.6.11' }, 'postcss': { 'plugins': { 'autoprefixer': {}, 'precss': {} } }}
結語
到此這篇關于Vue CLI3移動端適配(px2rem或postcss-plugin-px2rem)的文章就介紹到這了,更多相關Vue CLI3移動端適配內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!
相關文章: