Gulp 4 не справится с задом - PullRequest
       29

Gulp 4 не справится с задом

0 голосов
/ 22 февраля 2019

Было несколько тем, связанных с этой проблемой, но мне не удалось найти решение или объяснение моей проблемы.

Проблема

Яиспользуя локальную версию Gulp 4.0.0 и мой ранее существовавший gulpfile.js работал без сбоев.

Что я делаю в своем Gulpfile: наблюдаю за изменениями в файлах Sass, автоматически префиксирую их и переименовываю выходной файл в theme.scss.liquid (для Shopify) и, наконец, заменяю некоторые фигурные скобки, чтобы экранировать переменные Liquid.

Задание Sass

// Sass
gulp.task('sass', function() {
  gulp.src('./assets/scss/**/**/*.scss')
    .pipe(sass().on('error', function (err) {
      sass.logError(err);
      this.emit('end');
    }))
    .pipe(autoprefixer('last 2 versions'))
    .pipe(rename('theme.scss.liquid'))
    .pipe(replace('"{{', '{{'))
    .pipe(replace('}}"', '}}'))
    .pipe(gulp.dest('./assets/'));
});

Задание наблюдения

gulp.task('watch', function() {
  gulp.watch('./assets/scss/**/**/*.scss', gulp.series('sass'));
});

Что происходит

  • Запуск gulp watch начинает следить за изменениями.
  • Изменение или сохранение моего Sass запускает задачу sass.
  • Ничего другого не происходит
[12:55:33] Starting 'watch'...
[12:55:37] Starting 'sass'...

Любая помощь очень ценится!

1 Ответ

0 голосов
/ 22 февраля 2019

У меня похожие проблемы с gulp.task и gulp v4

Лучше возьмите новый синтаксис gulp 4.

const gulp = require('gulp');
// other dependencies
// ....

const sassFn = (cb) => {
  gulp.src('./assets/scss/**/*.scss')
    .pipe(sass().on('error', sass.logError))
    .pipe(autoprefixer('last 2 versions'))
    .pipe(rename('theme.scss.liquid'))
    .pipe(replace('"{{', '{{'))
    .pipe(replace('}}"', '}}'))
    .pipe(gulp.dest('./assets'));

  cb();
};

const watchFn = () => {
  gulp.watch('./assets/scss/**/*.scss', sassFn);
};

exports.watch = watchFn;
exports.default = watchFn;

Я удалил gulp.series (), потому что я думаю, что для его выполнения требуется как минимум 2 задачи.Далее я изменил путь src и dest.

...