Vue實現(xiàn)PC端分辨率自適應(yīng)的示例代碼
方案
lib-flexible+px2remLoaderlib-flexible:阿里可伸縮布局方案px2rem-loader:px轉(zhuǎn)rem
安裝依賴
npm install px2rem-loader -D npm install lib-flexible -S
引入依賴
main.js引入lib-flexible
import 'lib-flexible'
px轉(zhuǎn)換成rem
vue-loader的options和其他樣式文件loader最終是都是由build/utils.js里的方法生成的,我們只需在cssLoader后再加上一個px2remLoader即可,px2rem-loader的remUnit選項意思是 1rem=多少像素,結(jié)合lib-flexible的方案,我們將px2remLoader的options.remUnit設(shè)置成設(shè)計稿寬度的1/10,這里假設(shè)設(shè)計稿寬為1920px
build/utils.js中添加px2remLoader
const cssLoader = {
loader: 'css-loader',
options: {
sourceMap: options.sourceMap
}
}
// 增加代碼,px轉(zhuǎn)rem配置(需要將px2remloader添加進(jìn)loaders數(shù)組中)
const px2remLoader = {
loader: 'px2rem-loader',
options: {
remUnit: 192, //根據(jù)視覺稿,rem為px的十分之一,1920px 192 rem
// remPrecision: 8//換算的rem保留幾位小數(shù)點
}
}
放進(jìn)loaders數(shù)組中
// generate loader string to be used with extract text plugin
function generateLoaders (loader, loaderOptions) {
const loaders = options.usePostCSS ? [cssLoader, postcssLoader, px2remLoader] : [cssLoader, px2remLoader]
if (loader) {
loaders.push({
loader: loader + '-loader',
options: Object.assign({}, loaderOptions, {
sourceMap: options.sourceMap
})
})
}
//...
}
修改flexible.js
全局搜索flexible.js

將代碼修改為適應(yīng)PC端的代碼
function refreshRem(){
var width = docEl.getBoundingClientRect().width;
if (width / dpr > 540) {
width = width * dpr;
}
//縮放比例,可按實際情況修改
var rem = width / 8;
docEl.style.fontSize = rem + 'px';
flexible.rem = win.rem = rem;
}
對于不想被轉(zhuǎn)換的樣式,可在其后添加/*no*/保證不被轉(zhuǎn)換

參考博客
VUE PC端適應(yīng)方案flexible + px2remLoader 感謝大佬
vue實現(xiàn)PC端分辨率適配 感謝大佬
到此這篇關(guān)于Vue實現(xiàn)PC端分辨率自適應(yīng)的示例代碼的文章就介紹到這了,更多相關(guān)Vue PC端分辨率自適應(yīng) 內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
實現(xiàn)shallowReadonly和isProxy功能示例詳解
這篇文章主要為大家介紹了實現(xiàn)shallowReadonly和isProxy功能示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-12-12
Vue3新屬性之css中使用v-bind的方法(v-bind?in?css)
這篇文章主要介紹了Vue3新屬性css中使用v-bind(v-bind?in?css)的方法,本文結(jié)合實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-01-01
vue組件中iview的modal組件爬坑問題之modal的顯示與否應(yīng)該是使用v-show
這篇文章主要介紹了vue組件中iview的modal組件爬坑問題之modal的顯示與否應(yīng)該是使用v-show,本文通過實例圖文相結(jié)合的形式給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-04-04
教你60行代碼實現(xiàn)一個迷你響應(yīng)式系統(tǒng)vue
這篇文章主要為大家介紹了教你60行代碼實現(xiàn)一個迷你響應(yīng)式系統(tǒng)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪<BR>2023-03-03
使用vue-video-player實現(xiàn)直播的方式
在開發(fā)期間使用過video.js、mui-player等插件,發(fā)現(xiàn)這些video插件對移動端的兼容性都不友好,最后發(fā)現(xiàn)一個在移動端兼容不錯的插件vue-video-player,下面通過場景分析給大家介紹使用vue-video-player實現(xiàn)直播的方法,感興趣的朋友一起看看吧2022-01-01
vue項目如何使用$router.go(-1)返回時刷新原來的界面
這篇文章主要介紹了vue項目如何使用$router.go(-1)返回時刷新原來的界面問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-09-09

