Hash-al ellátott szkript csomagok a Webpack layout-ban
Általában a projekt összeállításakor azt szeretnénk, hogy a csomagok neve hash-t tartalmazzon. Erre azért van szükség, hogy megoldjuk a fájlok böngésző általi gyorsítótárazásával kapcsolatos problémát.
Ezért kényelmes, hogy a Webpack automatikusan csatlakoztatja a hash-t tartalmazó nevű csomagokat. Ellenőrizzük. Tegyük fel, hogy a következő beállításokkal rendelkezünk:
export default {
context: path.resolve( 'src'),
entry: {
test1: './test1.js',
test2: './test2.js'
},
output: {
filename: '[name].[contenthash].js',
path: path.resolve('dist'),
},
plugins: [
new HtmlWebpackPlugin(),
],
};
Az összeállítás után a layout fájlhoz csatlakoztatva lesznek a hash-elt csomagjaink:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Webpack App</title>
<script defer src="test1.4173b379c6d6ff439604.js"></script>
<script defer src="test2.72be8754d7c4cb0ece00.js"></script>
</head>
<body>
</body>
</html>
Ugyanakkor a projektfájlok módosításakor és újrafordításakor a Webpack automatikusan módosítja a hash-eket és végrehajtja a módosításokat a layout fájlban. Ha viszont a projektfájlok nem változtak, akkor a hash sem fog változni.
Készítsen három belépési pontot. Állítsa be, hogy külön csomagokba kerüljenek összeállításra, hash-t tartalmazó nevekkel.
Végezze el a projekt összeállítását. Győződjön meg arról, hogy a layout fájlban minden csomag csatlakoztatva van.
Módosítson egy szöveget az egyik belépési pont forrásfájljában. Végezze el az összeállítást. Ellenőrizze, hogy a hash ennek a csomagnak megváltozik-e, a többi csomagé viszont nem.