Gulp 4 - Задачи не завершены - Gulpfile.js Browsersync - PullRequest
0 голосов
/ 16 октября 2018

Я немного застрял с изменением моего старого Gulp 3 Gulpfile на работу в Gulp 4.

Я попал в точку, где все это работает, за исключением того, что задачи по умолчанию и обслуживания не помеченыкак закончено в powershell.

Как мне разблокировать код и позволить им правильно завершить работу, пожалуйста?

var gulp        = require('gulp');
var browserSync = require('browser-sync').create();
var sass        = require('gulp-sass');

// Compile sass into CSS & auto-inject into browsers
gulp.task('sass', function() {
    return gulp.src(['node_modules/bootstrap/scss/bootstrap.scss', 'src/scss/*.scss'])
        .pipe(sass())
        .pipe(gulp.dest("src/css"))
        .pipe(browserSync.stream());
});

// Move the javascript files into our /src/js folder
gulp.task('js', function() {
    return gulp.src(['node_modules/bootstrap/dist/js/bootstrap.min.js', 'node_modules/jquery/dist/jquery.min.js', 'node_modules/popper.js/dist/umd/popper.min.js'])
        .pipe(gulp.dest("src/js"))
        .pipe(browserSync.stream());
});

// Static Server + watching scss/html files
gulp.task('serve', gulp.series('sass', function() {

    browserSync.init({
        server: "./src"  
    });

    gulp.watch(['node_modules/bootstrap/scss/bootstrap.scss', 'src/scss/*.scss'], gulp.series('sass'));
    gulp.watch("src/*.html").on('change', browserSync.reload);
}));

gulp.task('default', gulp.parallel('js', 'serve'));

1 Ответ

0 голосов
/ 16 октября 2018

Вторая задача в вашей серии serve ничего не возвращает, глоток этого не понимает.Задача может вернуть поток или обещание - или она должна вызвать параметр обратного вызова, чтобы сообщить о завершении, например:

gulp.task('serve', gulp.series('sass', function(cb) {
    // Your js task code here
    cb()
}))

Прочитайте последнюю документацию gulp4 , это поможет вам,

...