Пересборка webpack при добавлении .html файла в runtime

206
23 ноября 2021, 06:50

Добрых времени суток, проблема, есть webpack config, всё работает как нужно, за исключением одного но, когда в рантайме (при зпущенном локальном сервере) создаешь новый .html файл, то при попытке пройти по адресу: localhost.../*.html, выдаёт:

cannot get /*.html

где * - имя файла

сборка:

const path = require('path'); 
const fs = require('fs'); 
const HtmlWebpackPlugin = require('html-webpack-plugin'); 
const CopyWebpackPlugin = require('copy-webpack-plugin'); 
 
const PATHS = { 
    src: path.join(__dirname, '../src'), 
    dist: path.join(__dirname, '../dist') 
}; 
 
const PAGES_DIR = `${PATHS.src}/html`; 
const PAGES = fs.readdirSync(PAGES_DIR).filter(file => file.endsWith('.html')); 
 
module.exports = { 
    externals: { 
        paths: PATHS 
    }, 
    entry: { 
        bundle: `${PATHS.src}/js/Application` 
    }, 
    optimization: { 
        runtimeChunk: true 
    }, 
    module: { 
        rules: [{ 
                test: /\.(js|jsx)$/, 
                exclude: /(node_modules|bower_components)/, 
                use: { 
                    loader: 'babel-loader', 
                    options: { 
                        presets: [ 
                            '@babel/preset-env' 
                        ] 
                    } 
                } 
            }, 
            { 
                test: /\.(png|jp?g|gif|svg|woff|woff2|eot|ttf|mp4)$/, 
                loader: 'file-loader', 
                options: { 
                    name: '[name].[ext]' 
                } 
            } 
        ] 
    }, 
    resolve: { 
        alias: { 
            '~': PATHS.src 
        } 
    }, 
    plugins: [ 
        new CopyWebpackPlugin([{ 
            from: `${PATHS.src}/assets`, 
            to: `${PATHS.dist}/assets` 
        }]), 
        ...PAGES.map(page => new HtmlWebpackPlugin({ 
            template: `${PAGES_DIR}/${page}`, 
            filename: `${PATHS.dist}/${page}`, 
            inject: true, // enable/disable auto-inject js/css files into HTML code 
            minify: { 
                collapseWhitespace: true, // optional 
                removeComments: true // optional 
            } 
        })) 
    ] 
};

понимаю, что переменная PAGES не обновляется, но как можно сделать так, чтобы обновлялась?

READ ALSO
Как найти пятницу 13 по году? [дубликат]

Как найти пятницу 13 по году? [дубликат]

Код по идее должен прогонять объект Date с определенным годом и складывать в массив все пятницы 13еНо в консоли выкидывает ошибку 400

88
Ошибка OpenCart 2.3 - magnificPopup is not a function

Ошибка OpenCart 2.3 - magnificPopup is not a function

В OpenCart (OcStore) 23 установил модуль для страницы отзывов с изображениями

183
Html и javascript

Html и javascript

Используя языки программирования html и javascript нужно добавить функцию Color (), которая изменит цвет фона всех нечетных строк таблицы на оранжевыйВызов...

65