Как следить за новыми файлами в Rollup с массивом конфигов? - PullRequest
0 голосов
/ 20 апреля 2020

В Rollup у вас может быть файл rollup.config.js, который возвращает либо один объект, либо массив различных конфигов.

export default [
  {
    input: 'pages/a.js',
    output: 'dist/a.js',
    // more config options
  },
  {
    input: 'pages/b.js',
    output: 'dist/b.js',
    // more config options
  },
  // etc
]

Таким образом, мы можем запустить функцию просмотра Rollup через rollup -c -w, и она будет запускать новый пакет всякий раз, когда любой из входных файлов или его зависимостей изменился.

Давайте go сделаем еще один шаг вперед, и вместо того, чтобы вручную генерировать этот массив конфигураций, мы делаем это, читая файлы в pages каталог с использованием fs.readdirSync(). Это имеет смысл, например, в проекте SSR, где вам нужно экспортировать каждую страницу как один .js для рендеринга HTML в узле.

Проблема теперь в том, что во время просмотра конфигурация Rollup не будет запущена если мы добавим новый файл в каталог pages. Поэтому всякий раз, когда мы создаем новый файл, мы должны снова начать просмотр.

Есть ли способ решить эту проблему с помощью Rollup?

...