vue項(xiàng)目build打包后部分樣式錯(cuò)亂的解決
vue項(xiàng)目build打包后部分樣式錯(cuò)亂
我在做一個(gè)頁(yè)面加載loading 效果的時(shí)候,改了很多樣式,有全局的有私有的,以至于到最后把自己都搞亂了不知道改過(guò)什么東西,最后在build打包上線后出現(xiàn)了部分樣式顯示錯(cuò)亂(主要是全局樣式),影響到了整個(gè)頁(yè)面,當(dāng)時(shí)都懵了,怎么也找不到問(wèn)題。墨跡到了晚上九點(diǎn)鐘。
在網(wǎng)上查了很多資料。最終解決,特意在這里記錄一下,發(fā)現(xiàn)網(wǎng)上關(guān)于這種問(wèn)題的回答挺少的所以我找了好久,希望我的回答可以貢獻(xiàn)一點(diǎn)力量,讓同樣遇到這個(gè)問(wèn)題的小伙伴不迷茫。
直接上代碼:
其實(shí)只需簡(jiǎn)單兩步就OK。
1, 在build 文件夾下 webpack.prod.conf.js 中 plugins 數(shù)組 注釋掉這句話

2, 同樣在utils.js 中 cssLoader 中加上 minimize: true

這樣再build打包試試,遇到這種問(wèn)題的主要原因是:build在打包的時(shí)候會(huì)把js,css文件一起打包這樣就會(huì)把重復(fù)的樣式覆蓋掉,所以我在app.vue里面寫的全局樣式就遭了殃,被玷污了!哈哈。
另外還有一些其他的辦法解決編譯后樣式不生效的問(wèn)題。在這里我一并說(shuō)一下,上面所說(shuō)的只是我遇到的狀況,也會(huì)有一些其他的場(chǎng)景也會(huì)導(dǎo)致樣式不生效。
1,main.js 入口文件樣式引入要有西安后續(xù)順序,樣式文件應(yīng)該稍微往前放放,比如像這樣,把a(bǔ)pp 和router 放在后面去。

2,在組件中的樣式加上 scoped 屬性,讓樣式只在當(dāng)前組件中生效。

3,最后一個(gè)方法就比較費(fèi)力了,是個(gè)體力活。找到被污染的樣式手動(dòng)修改,權(quán)重不夠提高權(quán)重多嵌套幾層選擇器,也可以加上!important
vue使用npm run build 打包樣式與本地不符
問(wèn)題描述
系統(tǒng)中集成Activiti 工作流時(shí),發(fā)現(xiàn)編輯頁(yè)面與本地開(kāi)發(fā)環(huán)境顯示不符,
本地開(kāi)發(fā)環(huán)境:

服務(wù)器生產(chǎn)環(huán)境:

本地環(huán)境可以顯示各種工具,服務(wù)器就很短。F12查看按鈕其實(shí)是有的。
因?yàn)閿?shù)據(jù)庫(kù)和后臺(tái)都是一致的,所以問(wèn)題鎖定在前端部分。
猜測(cè)是node版本問(wèn)題,換版本也不行。用同事電腦打包也是一個(gè)效果。
由于個(gè)人開(kāi)發(fā)久了有個(gè)老毛病,只看error 不看warning,相信很多老程序員都會(huì)有這個(gè)問(wèn)題。

WARNING in asset size limit: The following asset(s) exceed the recommended size limit (244 KiB).
意思是說(shuō)有的文件超出限制。得到這個(gè)線索打開(kāi)度娘翻到一個(gè)帖子復(fù)制粘貼大法

configureWebpack: config => {
// 為生產(chǎn)環(huán)境修改配置...
if (process.env.NODE_ENV === 'production') {
config.mode = 'production';
// 打包文件大小配置
config.performance = {
maxEntrypointSize: 10000000,
maxAssetSize: 30000000
}
}
},重新打包后警告消失發(fā)布服務(wù)器問(wèn)題解決
通往成功的路沒(méi)有捷徑。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
基于Vue3創(chuàng)建一個(gè)簡(jiǎn)單的倒計(jì)時(shí)組件
這篇文章主要給大家介紹了基于Vue3創(chuàng)建一個(gè)簡(jiǎn)單的倒計(jì)時(shí)組件的代碼示例,文中通過(guò)代碼示例介紹的非常詳細(xì),具有一定的參考價(jià)值,需要的朋友可以參考下2023-11-11
通過(guò)GASP讓vue實(shí)現(xiàn)動(dòng)態(tài)效果實(shí)例代碼詳解
GASP是一個(gè)JavaScript動(dòng)畫(huà)庫(kù),它支持快速開(kāi)發(fā)高性能的 Web 動(dòng)畫(huà)。GASP 使我們能夠輕松輕松快速的將動(dòng)畫(huà)串在一起,來(lái)創(chuàng)造一個(gè)高內(nèi)聚的流暢動(dòng)畫(huà)序列。這篇文章主要介紹了通過(guò)GASP讓vue實(shí)現(xiàn)動(dòng)態(tài)效果,需要的朋友可以參考下2019-11-11
vue生成初始化名字相近的變量并放到數(shù)組中的示例代碼
項(xiàng)目上有一個(gè)需求,頁(yè)面上有50、60個(gè)數(shù)據(jù)變量,是依次排序遞增的變量,中間有個(gè)別變量用不到,不想把這些變量直接定義在data() { }內(nèi),這篇文章主要介紹了vue生成初始化名字相近的變量并放到數(shù)組中的示例代碼,需要的朋友可以參考下2024-08-08
vue項(xiàng)目的創(chuàng)建的步驟(圖文教程)
本文主要介紹了vue項(xiàng)目的創(chuàng)建的步驟(圖文教程),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-03-03
vue+swiper實(shí)現(xiàn)左右滑動(dòng)的測(cè)試題功能
這篇文章主要介紹了vue+swiper實(shí)現(xiàn)左右滑動(dòng)的測(cè)試題功能,本文通過(guò)實(shí)例代碼給大介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-10-10
vue-simple-uploader上傳成功之后的response獲取代碼
這篇文章主要介紹了vue-simple-uploader上傳成功之后的response獲取代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧~2020-09-09
Vue3集成Element-plus快速搭建頁(yè)面框架的過(guò)程
ElementPlus是一款基于Vue3的UI組件庫(kù),提供了豐富的組件和響應(yīng)式設(shè)計(jì),易于使用和主題定制,在Vue3項(xiàng)目中集成ElementPlus,需要通過(guò)npm安裝并引入組件,主題色可以通過(guò)修改樣式文件進(jìn)行全局設(shè)置,本文介紹Vue3集成Element-plus快速搭建頁(yè)面框架,感興趣的朋友一起看看吧2025-03-03
vue路由傳參接收以及傳參對(duì)象為對(duì)象時(shí)的問(wèn)題及解決
這篇文章主要介紹了vue路由傳參接收以及傳參對(duì)象為對(duì)象時(shí)的問(wèn)題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-09-09

