Как заставить gulp.series запускать две задачи, которые успешно запускаются при индивидуальном запуске? - PullRequest
0 голосов
/ 28 октября 2019

У меня есть файл gulp 4, который содержит задачу наблюдения и задачу SyncBrowsers. Эти две задачи успешно выполняются, когда запускаются независимо. однако тогда в задании по умолчанию с gulp.series я не получаю ответа. Задача кажется зависшей. Может кто-нибудь объяснить, почему это так и как это исправить?

Я следовал советам API от gulpjs.com для начала и для серии задач. Я также исследовал документацию browserSync от https://github.com/gulpjs/gulp/blob/master/docs/recipes/minimal-browsersync-setup-with-gulp4.md.. Этот пример выполняет тот же процесс, что и я, и работает правильно.

let gulp = require('gulp');
var sass = require('gulp-sass');
const browserSync = require('browser-sync');
let uglify = require('gulp-uglify');
let prefixer = require('gulp-autoprefixer');
let gulpif = require('gulp-if');
let nano = require('gulp-cssnano');
let sourcemap = require('gulp-sourcemaps');
let del = require('del');
let runSequence = require('run-sequence');
let pug = require('gulp-pug');

const server = browserSync.create();
server.watch('wwwroot/*.html').on("change", server.reload);
//build tasks

function clean() {
    return del('wwwroot');

}


//development tasks
function SyncBrowsers(cb) {
    server.init({
        server:{
            baseDir: 'wwwroot',
            index: 'index.html'
        },
        port: 3002
    });
    cb();
}

function fsass() {
    return gulp.src('app/scss/**/*.scss')
    .pipe(sass())
    .pipe(gulp.dest('wwwroot/css'))
}

function pugtohtml() {
    return gulp.src('app/pug/**/*.pug')
    .pipe(pug({
        pretty:true
    }))
    .pipe(gulp.dest('./wwwroot/'))
}


function watch (cb) {
    gulp.watch(['app/scss/**/*.scss','app/*.html','app/js/**/*.js','app/pug/**/*.pug'],gulp.series(fsass, pugtohtml));
    cb();   
}

function build (){
    return gulp.series(clean, pugtohtml, fsass, fonts)
}

function defaults(cb){
   gulp.series(SyncBrowsers,watch);
   cb();
}

//run tasks
exports.build = build;

exports.default = defaults;
exports.watch = watch;
exports.pugtohtml = pugtohtml;
exports.fsass = fsass;
exports.clean = clean;
exports.SyncBrowsers = SyncBrowsers;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...