Задать вопрос
@GreenMan1899

Почему CleanWebpackPlugin при watch работает неправильно?

вот конфига вебпака.
const path = require("path");
const HtmlWebpackPlugin = require("html-webpack-plugin");
const { CleanWebpackPlugin } = require("clean-webpack-plugin");

module.exports = {
  context: path.resolve(__dirname, "src"),
  watch: true,
  mode: "development",
  entry: {
    main: "./index.js",
    analytics: "./analytics.js",
  },
  output: {
    filename: "[name].[contenthash].js",
    path: path.resolve(__dirname, "dist"),
  },
  module: {
    rules: [
      {
        test: /\.sass$/,
        use: ["style-loader", "css-loader", "sass-loader"],
      },
    ],
  },
  plugins: [
    new CleanWebpackPlugin(),
    new HtmlWebpackPlugin({
      template: "./index.html",
      filename: "index.html",
    }),
  ],
};


При изменении какого-то файла и сохранении он как и надо удаляет старые файлы и собирает новые. Но если ничего не менять и нажать сохранить, то плагин удаляет html файл. Причем такая фигня только в режиме watch: true. Если ничего не менять и вручную прожимать сборку development-а при watch: false, то html файл не пропадает.
5ed7cdf30129f326347374.png
  • Вопрос задан
  • 1008 просмотров
Подписаться 1 Средний Комментировать
Решения вопроса 1
@GreenMan1899 Автор вопроса
Нашел решение в отключении кэша в HtmlWebpackPlugin:
new HtmlWebpackPlugin({
      template: "./index.html",
      filename: "html/index.html",
      cache: false,
}),
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы