Skip to main content
Это руководство описывает, как настроить проект расширения браузера с помощью Webpack, сосредотачиваясь на конфигурации, поддерживающей несколько точек входа JavaScript и управление статическими ресурсами.

Шаг 1: Первоначальная настройка проекта

Начните с организации вашего проекта для размещения исходных файлов, статических ресурсов и конечного объединенного вывода. Директория вашего проекта должна выглядеть примерно так:

Шаг 2: Установка Node.js и NPM

Убедитесь, что Node.js и NPM установлены на вашей системе. Node.js необходим для работы с экосистемой пакетов, а NPM используется для управления зависимостями вашего проекта.

Шаг 3: Установка Webpack и других зависимостей

Перейдите в корневую директорию вашего проекта в терминале и инициализируйте новый проект NPM, если вы еще этого не сделали:
Затем установите Webpack и необходимые загрузчики и плагины:
  • Webpack объединяет ваш JavaScript и ресурсы.
  • Babel позволяет использовать современные функции JavaScript.
  • CopyPlugin копирует файлы и директории в вашу директорию сборки.
  • File Loader разрешает import/require() на файл в URL и выводит файл в выходную директорию.

Шаг 4: Конфигурация Webpack

Создайте файл webpack.config.js в корне вашего проекта. Этот файл должен определять ваши точки входа, конфигурацию вывода, правила модулей для загрузки различных типов файлов и плагины для дополнительной функциональности. Вот как должен выглядеть ваш webpack.config.js с данной настройкой:

Шаг 5: Настройка манифеста и HTML файлов

Убедитесь, что ваш manifest.json и любые HTML файлы правильно ссылаются на скрипты и ресурсы. Например, скрипты будут выводиться в папку dist, поэтому обновите пути соответствующим образом.

Шаг 6: Интеграция скриптов сборки в package.json

После настройки вашего проекта с Webpack и его конфигурации, как описано в предыдущих шагах, вы захотите автоматизировать процессы сборки и наблюдения с помощью скриптов npm. Откройте ваш файл package.json и добавьте следующие скрипты в объект scripts:
Вот что делает каждый скрипт:
  • "build": Собирает ваше расширение в режиме производства, оптимизируя вывод для развертывания. Этот режим включает оптимизации, такие как минификация и устранение мертвого кода.
  • "watch": Запускает Webpack в режиме разработки и следит за изменениями в ваших файлах, автоматически перекомпилируя проект при изменении файла. Это полезно во время разработки для немедленной обратной связи о внесенных изменениях.

Шаг 7: Тестирование и сборка расширения

Чтобы собрать ваше расширение для производства, используйте:
Эта команда вызывает Webpack с флагом --mode production, оптимизируя ваш проект для развертывания. Для разработки вы можете настроить Webpack на отслеживание ваших файлов и перекомпиляцию при обнаружении изменений:
Это делает процесс разработки более плавным, так как вам не нужно вручную пересобирать проект после каждого изменения.

Шаг 7: Тестирование расширения

Чтобы протестировать ваше расширение в Chrome:
  1. Перейдите на chrome://extensions/ в браузере Chrome.
  2. Включите “Режим разработчика” в правом верхнем углу.
  3. Нажмите “Загрузить распакованное” и выберите вашу папку dist.
Это установит расширение локально для тестирования и разработки.