🔌 Плагины

Parcel использует несколько иной подход из многих инструментов, поскольку многие распространенные форматы включены из коробки без необходимости установки и настройки дополнительных плагинов. Однако есть случаи, когда вы захотите расширить Parcel нестандартным способом, и для таких случаев поддерживаются плагины. Установленные плагины автоматически обнаруживаются и загружаются на основе зависимостей в package.json.

При добавлении поддержки нового формата файла в Parcel вы должны сначала рассмотреть, насколько он распространен и как стандартизирована его реализация. Если он достаточно распространен и стандартен, вероятно, его следует добавить в ядро Parcel, вместо того, чтобы использовать его в виде плагина, который необходимо установить пользователям. Если у вас есть какие-либо сомнения, GitHub — это подходящее место для обсуждения.

API для плагинов

Плагины для Parcel очень просты. Это просто модули, которые экспортируют одну функцию, которая автоматически вызывается Parcel во время инициализации. Функция получает объект Bundler в качестве входных данных и может выполнять такую настройку, как регистрация типов ресурсов и упаковщиков.

module.exports = function(bundler) {
  bundler.addAssetType('ext', require.resolve('./MyAsset'))
  bundler.addPackager('foo', require.resolve('./MyPackager'))
}

Опубликуйте этот пакет на npm, используя префикс parcel-plugin-, и он будет автоматически обнаружен и загружен, как описано ниже.

Использование плагинов

Использование плагинов в Parcel не может быть проще. Всё, что вам нужно сделать, это установить и сохранить их в своём package.json. Плагины должны иметь префикс parcel-plugin- (например, parcel-plugin-foo). Любые зависимости, перечисленные в package.json с этим префиксом, будут автоматически загружены при инициализации.

Помогите нам улучшить документацию

Если что-то отсутствует или не совсем понятно, пожалуйста опишите проблему в репозитории сайта или отредактируйте эту страницу.