欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解webpack 熱更新優(yōu)化

 更新時間:2018年09月13日 11:48:02   作者:juan26  
這篇文章主要介紹了詳解webpack 熱更新優(yōu)化,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

前言

隨著項目的界面越來越多,webpack的熱更新越來越慢,有時會達到5,7s之久,這對于開發(fā)效率影響是非常巨大的。

分析過程

于是今天就針對這個分析了一下熱更新慢的原因,步驟如下

首先先在package中的啟動命令加上

--progress --watch --colors --profile

先解釋一下這幾個參數的含義

  • --progress 構建進度
  • --watch 實時監(jiān)測
  • --profile 編譯過程中的步驟耗時時間

加上了這幾個參數,重啟項目,就可以開始觀察耗時時間了,修改了某個文件之后,查看控制臺,如下

圖中紅色部分就是耗時最長的地方了,好了,發(fā)現了耗時時間長的地方了,經過百度搜索,發(fā)現也有個問題和我這個非常類似,他的原因是因為使用了uglifyJsPlugin插件,這么一想,我的項目中的webpack配置中也用到了這個插件,于是把這個插件移到生產環(huán)境中使用,修改之后重啟項目,修改某個文件之后,查看控制臺,如下

效果非常驚人,總的耗時已經在1,2s之內了,效率提高了不少!!如果也有這種煩惱的小伙伴也可以試一下哦

另一種解決方案

這種方案的思路為,開發(fā)環(huán)境中,每人負責的都是一部分模塊或者組件,所以熱更新可以只編譯自己當前需要的頁面,而沒必要把所有的頁面全部編譯。創(chuàng)建一個 selfConfig.js 設置需要保存的頁面,然后在 webpack 配置中,配置,只屬于需要的頁面去編譯熱更新。加快開發(fā)環(huán)境中的編譯速度。

// selfConfig.js
module.exports = [
'imScence',
'mLogin'
];
// webpack.base.conf.js 
// 部分關鍵代碼
const selfConfig = require("./selfConfig");

for (let moduleName of modules) {
if (selfConfig.length === 0) {
devEntries[moduleName] = path.join(resolve('src'), 'modules', moduleName, 'main.js');
} else {
if (selfConfig.includes(moduleName)) {
devEntries[moduleName] = path.join(resolve('src'), 'modules', moduleName, 'main.js');
}
}
buildEntries[moduleName] = path.join(resolve('src'), 'modules', moduleName, 'main.js');
}

以上事例設置完成后,只會熱更新兩個頁面,但是這種方案的弊端是,其他頁面本地環(huán)境將是白屏打不開(因為壓根沒編譯),所以這種方案還是根據適合自己的場景使用。

注意: 每次修改 selfConfig.js 需要重起 webpack 服務。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • js數據向上翻滾_數據滾動

    js數據向上翻滾_數據滾動

    方便做一些問題提交等宣傳效果,多用于文字滾動
    2008-10-10
  • Webpack中Source?Map配置深入解析

    Webpack中Source?Map配置深入解析

    這篇文章主要為大家介紹了Webpack中Source?Map配置深入解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-11-11
  • JS多文件上傳的實例代碼

    JS多文件上傳的實例代碼

    本文通過實例代碼給大介紹了js多文件上傳的實現方法,非常不錯,具有參考借鑒價值,需要的朋友參考下
    2017-01-01
  • JS實現拼圖游戲

    JS實現拼圖游戲

    這篇文章主要為大家詳細介紹了JS實現拼圖游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-12-12
  • js中將URL中的參數提取出來作為對象的實現代碼

    js中將URL中的參數提取出來作為對象的實現代碼

    將URL中的參數提取出來作為對象的實現代碼,適合希望獲取url參數的朋友。
    2011-08-08
  • JavaScript數組的一些奇葩行為

    JavaScript數組的一些奇葩行為

    今天,復習了一下JavaScript的數組,然后,把他的一些奇葩行為總結了一下,分享在腳本之家平臺,歡迎大家參考
    2016-01-01
  • JavaScript中創(chuàng)建字典對象(dictionary)實例

    JavaScript中創(chuàng)建字典對象(dictionary)實例

    這篇文章主要介紹了JavaScript中創(chuàng)建字典對象(dictionary)實例,本文直接給出了實現的源碼,并給出了使用示例,需要的朋友可以參考下
    2015-03-03
  • JavaScript字符串轉數字的5種方法及遇到的坑

    JavaScript字符串轉數字的5種方法及遇到的坑

    JavaScript是一個神奇的語言,字符串轉數字有5種方法,各有各的坑法!接下來通過本文給大家介紹JavaScript字符串轉數字的5種方法及其陷阱,感興趣的朋友一起看看吧
    2018-07-07
  • 基于js 本地存儲(詳解)

    基于js 本地存儲(詳解)

    下面小編就為大家?guī)硪黄趈s 本地存儲(詳解)。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • javascript實現禁止復制網頁內容匯總

    javascript實現禁止復制網頁內容匯總

    本文給大家匯總介紹了幾種使用javascript和CSS實現禁止復制頁面內容的方法,非常的實用,有需要的小伙伴可以參考下。
    2015-12-12

最新評論