webpack4系列第四發

2021-08-21 11:57:30 字數 1620 閱讀 2709

webpack4中的hmr配置及其簡單,如下所示即可 :

const webpack = require('webpack')

module.exports =

}

src/index.js(入口檔案)

import

'./style.css'

這樣當我們的css檔案更新的時候,就會自動替換所更新的。

需要注意的是,這裡css的自動更新是需要記得使用style-loader才可以的哦

即:

const devmode = process.env.node_env !== 'production'

jshmr需要增加一段js

import printme from './print.js';

if (module.hot) )

}

這樣當print.js發生改變的時候,就會自動重新整理並列印"accepting the updated printme module!"

先看我之前寫的文章 效能優化——tree-shaking 的使用

當我們引用乙個js或者乙個npm包的時候,我們可能僅僅使用了其中乙個方法,並不希望引入沒用到的方法,但是tree shaking的實現是基於 es6 的模組化方案的靜態分析來實現的。另外還需要有乙個壓縮工具,在之前版本的webpack中,我們需要手動引入uglifyjs-webpack-plugin。而在webpack4裡面,我們可以直接指定modeproduction就可以啦。

值得注意的是,我們需要關閉babel的模組化策略。

即在.babelrc檔案中:

}]]}

另外新增了乙個特性是針對於library作者的。當我們引用的第三方包中pageage.json有如下配置:

name: 'spawn',

sideeffects: false

sideeffects是說明該模組是否是有***。當某個模組的package.json檔案中有了這個宣告之後,webpack會認為這個模組沒有任何***,只是單純用來對外暴露模組使用,那麼在打包的時候就會做一些額外的處理。

比如我們常用的lodash就專門為此除了乙個lodash-es模組,來幫助使用者進行tree-shaking

webpack4配置詳解

方式一 單檔案寫法 entry 方式二 多檔案寫法 entry output 常用的有三種 模板描述 hash模組識別符號的hash,一般應用於filename name hash js chunkhash按需載入塊內容的hash,根據chunk自身的內容計算而來,js name chunkhash...

webpack4快速上手

1.在專案根目錄cnpm init y初始化。生成package.json檔案 2.在專案裡面使用cnpm安裝webpack 3.需要在根目錄下新建webpack.config.js檔案 在其裡面配置暴露物件 module.exports 4.在根目錄下新建src index.js檔案 因為此時執行...

webpack4 基本使用

webpack是基於node構建,所以wepack支援所有node api和語法。即 chrome瀏覽器能支援的ecmascript語法 排除dom bom wbpack都能支援。chrome不支援es6,所以webpack也不支援。建立基本的webpack4.x專案 建立後的目錄 其中 packa...