В веб-пакете документации по кэшированию рекомендуется использовать замену [contenthash]
:
Подстановка [contenthash] добавит уникальный ha sh на основе содержимого актив. Когда меняется содержимое ресурса, [contenthash] также меняется.
вот пример того, как это будет выглядеть в вашем фрагменте кода сверху:
const HtmlWebpackPlugin = require('html-webpack-plugin');
// ...
return [{
entry: './src/main.js',
plugins: [
new HtmlWebpackPlugin({ title: 'Caching' }),
],
output: {
filename: 'widget.[contenthash].js',
path: path.resolve(bundleOutputDir),
}
}]
Вывод должно быть примерно таким:
widget.7e2c49a622975ebd9b7e.js
Это не будет делать именно то, что вы просите, потому что имя не будет меняться при каждой перезагрузке. Но это приведет к изменению имени файла при изменении кода, и я подозреваю, что это ваш желаемый результат.