最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解webpack的文件監(jiān)聽實現(xiàn)(熱更新)

 更新時間:2020年09月11日 14:13:46   作者:kaiking_g  
這篇文章主要介紹了詳解webpack的文件監(jiān)聽實現(xiàn)(熱更新),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

前言

文件監(jiān)聽是在源碼發(fā)生變化時,自動重新構建出新的輸出文件。
webpack 開啟監(jiān)聽模式,有兩種方式:

1.啟動 webpack 命令時,帶上 --watch 參數(shù)。
 唯一缺點:需要手動刷新才能看到變化;

2.在配置 webpack.config.js 中設置 watch: true。
 優(yōu)點:
(1) WDS 不刷新瀏覽器
(2) WDS 不輸出文件,⽽是放在內(nèi)存中
(3) 使⽤用 HotModuleReplacementPlugin 插件

1 第一種方式, --watch

1.1 配置package.json

{
 // ...
 "scripts": {
  "test": "echo \"Error: no test specified\" && exit 1",
  "build": "webpack",
  "watch": "webpack --watch" // 新增配置
 }
 // ...
}

1.2 到控制臺輸入 npm run watch

1.3 修改文件,保存后,會自動打包,到瀏覽器刷新,才能看到變化。

1.4 文件監(jiān)聽的原理理分析

輪詢判斷文件的最后編輯時間是否變化

某個⽂件發(fā)⽣生了了變化,并不會⽴刻告訴監(jiān)聽者,⽽是先緩存起來,等 aggregateTimeout

module.export = {
 //默認 false,也就是不不開啟
 watch: true,
 //只有開啟監(jiān)聽模式時,watchOptions才有意義
 wathcOptions: {
 //默認為空,不監(jiān)聽的文件或者文件夾,支持正則匹配
 ignored: /node_modules/,
 //監(jiān)聽到變化發(fā)生后會等300ms再去執(zhí)行,默認300ms
 aggregateTimeout: 300,
 //判斷文件是否發(fā)生變化是通過不停詢問系統(tǒng)指定文件有沒有變化實現(xiàn)的,默認每秒問1000次
 poll: 1000
 }
}

2 第二種方式,在配置 webpack.config.js 中設置 watch: true(熱更新:webpack-dev-server)

2.1 配置package.json

{
 // ...
 "scripts": {
  "test": "echo \"Error: no test specified\" && exit 1",
  "build": "webpack",
  "dev": "webpack-dev-server --open" // 新增配置,運行 npm run dev 會自動打開瀏覽器
 }
 // ...
}

2.2 配置webpack.config.js

'use strict'
 
const path = require('path');
var webpack = require('webpack'); // 引進 webpack
module.exports = {
 // ...
 mode:'development', // production 改為開發(fā)環(huán)境,因為只有開發(fā)環(huán)境才用到熱更新
 module:{
 // ...
 },
  plugins:[
   new webpack.HotModuleReplacementPlugin()
  ],
  devServer:{
   contentBase:'./dist',
   hot: true
  }
}

2.3 到控制臺運行 npm run dev,即可運行!

到此這篇關于詳解webpack的文件監(jiān)聽實現(xiàn)(熱更新)的文章就介紹到這了,更多相關webpack 文件監(jiān)聽內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論

星子县| 乐东| 涟源市| 马关县| 南靖县| 浪卡子县| 新建县| 鄯善县| 博爱县| 阿拉善左旗| 兴仁县| 桓台县| 新和县| 陇西县| 鸡东县| 咸丰县| 沙坪坝区| 武冈市| 基隆市| 获嘉县| 浦县| 聂拉木县| 璧山县| 松原市| 馆陶县| 沙河市| 沙雅县| 铅山县| 乐平市| 石渠县| 万盛区| 南漳县| 扬州市| 红河县| 墨玉县| 洮南市| 上饶县| 阿勒泰市| 友谊县| 南华县| 伊吾县|