Zväzky skriptov s hashom v makete v Webpack

Spravidla pri zostavovaní projektu chceme, aby názvy zväzkov obsahovali hash. Potrebujeme to na to, aby sme vyriešili problém s ukladaním súborov do vyrovnávacej pamäte prehliadača.

Preto je pohodlné, že Webpack automaticky pripojí zväzky s názvami, ktoré obsahujú hash. Skontrolujme to. Nech máme nasledujúce nastavenia:

webpack.config.jsexport default {
  context: path.resolve( 'src'),
  entry: {
    test1: './test1.js',
    test2: './test2.js'
  },
  output: {
    filename: '[name].[contenthash].js',
    path: path.resolve('dist'),
  },
  plugins: [
    new HtmlWebpackPlugin(),
  ],
};

Po zostavení budú k súboru maketa pripojené naše zväzky s hashmi:

dist/index.html<!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>

Zároveň pri zmene súborov projektu a prebudovaní Webpack automaticky zmení hashe a vykoná zmeny v súbore maketa. Ak sa súbory projektu nezmenili, tak sa hash ani nezmení.

Задание 1

Vytvorte tri vstupné body. Zaistite, aby sa zostavili do samostatných zväzkov s názvami obsahujúcimi hashe.

Задание 2

Vykonajte zostavenie projektu. Presvedčte sa, že v súbore maketa sú pripojené všetky zväzky.

Задание 3

Zmeňte text v zdrojovom súbore jedného z vstupných bodov. Vykonajte zostavenie. Skontrolujte, že hash zväzku tohto bodu sa zmení, a ostatných zväzkov - nie.