Скопируйте файлы с помощью Gulp.js

Я пытался скопировать серию html-страниц из моей папки src в папку dist с помощью Gulp. Я посмотрел в Интернете, и по какой-то причине то, что должно нормально работать, у меня не работает.

моя структура папок выглядит следующим образом: введите здесь описание изображения

Вот мой глоток:

    var gulp = require('gulp'),
        sass = require('gulp-ruby-sass'),
        notify = require('gulp-notify'),
        livereload = require('gulp-livereload'),
        del = require('del');       

        //////////////////////////////////////////CLEAN THE DIST
        gulp.task('clean', function() {
        return del(['dist/**/*']);
        });       


        //////////////////////////////////////////COMPILE SCSS
        gulp.task('scss', function() {
        return sass('src/scss/app.scss', { style: 'expanded' })
        .pipe(gulp.dest('dist/assets/css'))
        .pipe(notify('SCSS task complete'));
        });     


        //////////////////////////////////////////COPY ALL HTML TO DIST
        gulp.task('copy', ['scss'], function () {
        return gulp.src(['src/**/*.html'], {
            base: 'src'
            }).pipe(gulp.dest('dist'));
            });


        gulp.task('default', ['clean'], function() {
          gulp.start('copy');
        });

Я настроил задачу «копировать», чтобы сначала скомпилировать scss, а затем он должен скопировать весь HTML, который он находит в папке src, в dist. Но это не так! Мой scss компилируется и копируется как app.css просто отлично, но html-страницы - нет.

Любые идеи о том, что я делаю неправильно?


person sandro macchioli    schedule 20.02.2018    source источник


Ответы (1)


Я не знаю, что вы делаете что-то не так. Я попытался воспроизвести ваш тест, и при попытке установить gulp-ruby-sass возникла ошибка npm, поэтому я просто использовал gulp-sass с небольшими изменениями, указанными ниже, и он работал нормально. Возможно, у вас есть ошибка в ваших файлах scss? Приведенная ниже ошибка logError поможет.

var gulp = require('gulp'),
        sass = require('gulp-sass'),
        notify = require('gulp-notify'),
        // livereload = require('gulp-livereload'),
        del = require('del');

        //////////////////////////////////////////COMPILE SCSS
        gulp.task('scss', function() {
          return gulp.src(['src/scss/app.scss'])
            .pipe(sass({ style: 'expanded' }).on("error", sass.logError))
            .pipe(gulp.dest('dist/assets/css'))
            .pipe(notify('SCSS task complete'));
        });     
person Mark    schedule 20.02.2018
comment
Привет @mark, Большое спасибо за изучение этого. Однако проблема не в sass, а в моей задаче Copy gulp. Он не копирует мои HTML-страницы из папки src в папку dist. Я не могу понять, почему! - person sandro macchioli; 21.02.2018
comment
Я это понимаю. Я говорю, что я использовал gulp-sass и ваш скопированный html-код, и это сработало отлично. легко попытаться увидеть, поможет ли это. - person Mark; 21.02.2018