Запуск сборщика посылок из командной строки не останавливает процесс

У меня есть простой файл JS, который запускает сборщик посылок:

const Bundler = require('parcel-bundler');
(async () => {
  const bundler = new Bundler('./src/index.html', {}); // options omitted for simplicity
  await bundler.bundle();
})();

Я запускаю его из CLI с помощью:

node ./build.js

Хотя упаковщик работает нормально и создает связанные файлы в папке dist, процесс никогда не завершается, а остается в асинхронном цикле.

Я пытался добавить обратный вызов then или использовать return, но ничего из этого не помогло. Использование process.exit(), конечно, остановило бы процесс, но также ограничило бы меня от связывания этой команды в CI, что и является основной целью.

Что я делаю неправильно?

🤔 А знаете ли вы, что...
С JavaScript можно создавать расширения для различных платформ, таких как Adobe Acrobat и Microsoft Office.


2
1 502
1

Ответ:

Решено

Вам нужно установить watch: false в своих опциях, чтобы Parcel знал, что он не должен смотреть, а просто построить его один раз.

Параметр по умолчанию — watch: true, поэтому всякий раз, когда вы что-то меняете в своих файлах, Parcel распознает это изменение и перестраивает ваше приложение.