Gulp - Как скопировать файлы во все подпапки папки - PullRequest
0 голосов
/ 12 ноября 2018

Я хотел бы скопировать один файл в каждый подкаталог каталога с помощью gulp. Этот код, кажется, не работает, хотя * должно означать любое количество символов, если я не ошибаюсь.

// Copy the main.css
    gulp.src('./styles/main.css')
       .pipe(gulp.dest('./test-courses/*/'));

Разве gulp не может обнаружить все подпапки сам? Можно ли написать что-нибудь подобное с Gulp?

Спасибо за любую помощь

1 Ответ

0 голосов
/ 12 ноября 2018

Попробуйте это:

const glob = require('glob');

// get an array of subdirectories under test-courses, 
const subDirectories = glob.sync('./test-courses/*/');

// console.dir(subDirectories);

// Copy the main.css
gulp.task('default', (done) => {

  // run the pipeline for each subDirectory

  subDirectories.forEach(function (subDirectory) {

    return gulp.src('./styles/main.css')
      .pipe(gulp.dest(subDirectory));
  });

  done();
});

glob.sync возвращает массив.

Я считаю, что gulp.dest принимает простую строку (, а не глобус) или функцию, которая возвращает строку, так что ваш ('./test-courses/*/') не будет работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...