詳解Vue-cli webpack移動(dòng)端自動(dòng)化構(gòu)建rem問題
相信很多小伙伴想著自己的移動(dòng)端項(xiàng)目能夠自動(dòng)轉(zhuǎn)換為rem,這才符合前端的潮流,如果用自己手寫或者編輯器插件來改動(dòng)十分不方便還容易出錯(cuò),我在網(wǎng)上找了很多的方法發(fā)現(xiàn)以下問題:
1 照著老的視頻教程去弄,發(fā)現(xiàn)node npm webpack px2rem的各種插件版本都不一樣,根本沒用
2 網(wǎng)上的教程缺斤少倆,不完整,搞得我整了半天搞不定,想想干脆手動(dòng)vscode 的cssrem設(shè)置算了,但老子還是不服氣,東拼西湊還是整出來了,最后還是研究出了以下方法希望對(duì)大家的移動(dòng)端自動(dòng)化構(gòu)建rem有幫助
1 安裝vue-cli這個(gè)就不多說了,大家都應(yīng)該會(huì)
2 安裝和配置px2rem-loader(這里沒有用postcss試過了很多問題還是決定用這個(gè))
第一步 :npm install px2rem-loader
第二部 : webpack.base.conf.js下添加對(duì)象,這里我用的是sass,用其他的按照下面規(guī)律改就行了,相信都看得懂
module.exports={
module: {
rules: [
{
test: /\.(css|less|scss)(\?.*)?$/,
loader: 'style-loader!css-loader!sass-loader!less-loader!postcss-loader'
}
]
}
}
第三步 : webpack.dev.conf.js下的plugins添加一個(gè)東西,大家一定要注意remUnit這個(gè)屬性,就是在蘋果5情況下為40px,我這里定為40,也有人定為80,我這里40是為了配合hotcss使用下面我會(huì)講到
plugins: [
new webpack.LoaderOptionsPlugin({
// webpack 2.0之后, 此配置不能直接寫在自定義配置項(xiàng)中, 必須寫在此處
vue: {
postcss: [require('postcss-px2rem')({ remUnit: 40, propWhiteList: [] })]
}
}
]
第四部 : 這是多人不知道的,很多人就是差這一步,utils.js下找到const cssLoader加上?importLoaders=1
const cssLoader = {
loader: 'css-loader?importLoaders=1',
options: {
minimize: process.env.NODE_ENV === 'production',
sourceMap: options.sourceMap
}
}
到這里為止安裝就完成了
輸入font-size:40px
輸出font-size:1rem (在iphone下)
3 我們都知道設(shè)備的像素比不一樣的,所以我們用hotcss來調(diào)整設(shè)備的像素比 鏈接
我放在了src/assets/js/里面大家可根據(jù)習(xí)慣來
引入方法,自己定義什么名字都行,這里我吧hotcss.js改為了viewport.js
module.exports = {
entry: {
app: './src/main.js',
rem: './src/assets/js/viewport.js'
}
}
這樣就大功告成啦
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
快速解決vue在ios端下點(diǎn)擊響應(yīng)延時(shí)的問題
今天小編就為大家分享一篇快速解決vue在ios端下點(diǎn)擊響應(yīng)延時(shí)的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-08-08
如何使用vue3簡(jiǎn)單實(shí)現(xiàn)WebSocket通信
這篇文章主要給大家介紹了關(guān)于如何使用vue3簡(jiǎn)單實(shí)現(xiàn)WebSocket通信的相關(guān)資料,WebSocket是全雙工網(wǎng)絡(luò)通信通信協(xié)議,實(shí)現(xiàn)了客戶端和服務(wù)器的平等對(duì)話,任何一方都可以主動(dòng)發(fā)送數(shù)據(jù),需要的朋友可以參考下2023-08-08
vue+element實(shí)現(xiàn)下拉菜單并帶本地搜索功能示例詳解
這篇文章主要介紹了vue+element實(shí)現(xiàn)下拉菜單并帶本地搜索功能,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-09-09
vue完成項(xiàng)目后,打包成靜態(tài)文件的方法
今天小編就為大家分享一篇vue完成項(xiàng)目后,打包成靜態(tài)文件的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-09-09
Vue3中Element-Plus分頁(Pagination)組件的使用
Element-Plus分頁(Pagination)組件在開發(fā)過程中數(shù)據(jù)展示會(huì)經(jīng)常使用到,同時(shí)分頁功能也會(huì)添加到頁面中,下面我們就來學(xué)習(xí)一下它的具體使用,需要的可以參考一下2023-11-11
vue如何監(jiān)聽元素橫向滾動(dòng)到最右側(cè)
這篇文章主要介紹了vue如何監(jiān)聽元素橫向滾動(dòng)到最右側(cè)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-10-10
vite構(gòu)建vue3項(xiàng)目的全過程記錄
vite是VUE3創(chuàng)建項(xiàng)目的工具,項(xiàng)目大了之后,性能明顯優(yōu)于webpack,下面這篇文章主要給大家介紹了關(guān)于vite構(gòu)建vue3項(xiàng)目的相關(guān)資料,需要的朋友可以參考下2023-01-01
Vue3 的ref和reactive的用法和區(qū)別示例解析
ref和reactive是Vue3中用來實(shí)現(xiàn)數(shù)據(jù)響應(yīng)式的API,一般情況下,ref定義基本數(shù)據(jù)類型,reactive定義引用數(shù)據(jù)類型,本文給大家介紹Vue3 的ref和reactive的用法和區(qū)別,感興趣的朋友一起看看吧2023-10-10

