Скопируйте файлы сборки в другой проект с помощью веб-пакета - PullRequest
0 голосов
/ 25 апреля 2019

У меня есть две папки проекта в одной родительской папке. Один предназначен для файлов переднего плана (JS, CSS, изображения и т. Д.), А другой - для файлов внутреннего интерфейса. Проект frontend использует webpack для создания файлов в папке dist. Внутренний проект - это тот, который развертывается на сервере (или запускается на локальном хосте).

Таким образом, каждый раз, когда я изменяю файл JS или CSS, я запускаю сборку webpack, копирую файлы сборки из папки frontend-project/dist в папку backend/frontend/js или backend/frontend/css и перезапускаю бэкэнд-проект.

Это действительно контрпродуктивно. Я хочу скопировать файлы dist автоматически после сборки на backend-project. Есть ли способ сделать это в веб-пакете с помощью плагина или без него? Раньше я использовал gulp для такого рода задач, но сейчас хочу полагаться исключительно на веб-пакет.

Я попробовал copy-webpack-plugin , но он не запускается после сборки, поэтому для меня это бесполезно.

1 Ответ

0 голосов
/ 25 апреля 2019

Я вижу несколько способов достижения ваших целей:

  1. Вы можете указать папку backend/frontend/js в качестве выходной папки для ваших пакетов.
module.exports = {
    //...
    output: {
        path: path.resolve(__dirname, '../backend/frontend')
    }
};
Если вам нужны две копии ваших пакетов (одна в папке внешнего интерфейса, а другая в бэкэнде), вы можете использовать FileManagerPlugin для копирования файлов вашего пакета в бэкэнд после завершения сборки.
module.exports = {
    //...
    plugins: [
        new FileManagerPlugin({
            onEnd: [{
                copy: [
                    {
                        source: path.join(__dirname, 'dist'),
                        destination: path.join(__dirname, '../backend/frontend')
                    }
                ]
            }]
        })
    ]
};
Если вы запускаете сборку вручную после каждого изменения кода, я думаю, что это непродуктивно.Вы можете использовать webpack-dev-server для автоматического запуска сборки при разработке.Он не хранит пакеты в файловой системе, он хранит их в памяти.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...