0

我从 Gulp 3.9.1 升级到 Gulp。4.0.1,现在当我运行它时,我看到"Starting 'default'..."并没有其他任何事情发生。这是我的 gulpfile 的结尾:

gulp.task('default', function() {
  gulp.watch('app/styles/**/*.scss', gulp.series('sass')),
  gulp.watch('app/*.html', gulp.series('browserSync')),
  gulp.watch('app/js/**/*.js', gulp.series('browserSync'));
  return
});

// Optimization Tasks 
// ------------------

// Optimizing CSS and JavaScript 
gulp.task('useref', function() {

  return gulp.src('app/*.html')
    .pipe(useref())
    .pipe(gulpIf('*.js', uglify()))
    .pipe(gulpIf('*.css', cssnano()))
    .pipe(gulp.dest('dist'));
});

// Optimizing Images 
gulp.task('images', function() {
  return gulp.src('app/images/**/*.+(png|jpg|jpeg|gif|svg)')
    // Caching images that ran through imagemin
    .pipe(cache(imagemin({
      interlaced: true,
    })))
    .pipe(gulp.dest('dist/images'))
});

// Copying fonts 
gulp.task('fonts', function() {
  return gulp.src('app/fonts/**/*')
    .pipe(gulp.dest('dist/fonts'))
})

// Cleaning 
gulp.task('clean', function() {
  return del.sync('dist').then(function(cb) {
    return cache.clearAll(cb);
  });
})

gulp.task('clean:dist', function() {
  return del.sync(['dist/**/*', '!dist/images', '!dist/images/**/*']);
});

// Build Sequences
// ---------------

gulp.task('build', function(callback) {
  runSequence(
    'clean:dist',
    'sass',
    ['useref', 'images', 'fonts'],
    callback
  )
})

我尝试用几种不同的方式重写我的代码,但我遇到了各种错误。我得到的最远的方法是在一些 gulp 任务结束时done传入函数并运行done函数,但我知道我应该能够使用 Gulp 4 而无需采用该路线。

4

1 回答 1

0

更改默认代码

gulp.task('default', function() {
  gulp.watch('app/styles/**/*.scss', gulp.series('sass')),
  gulp.watch('app/*.html', gulp.series('browserSync')),
  gulp.watch('app/js/**/*.js', gulp.series('browserSync'));
  return
});

进入到这个

function watch() {
    browserSync.init({
        server:{
            baseDir: './'
        }
    });
    gulp.watch('./scss/**/*.scss',style);
    gulp.watch('./**/*.html').on('change',browserSync.reload);
    gulp.watch('./scss/**/*.js').on('change',browserSync.reload);

}

exports.watch = watch;
gulp.task('default',watch  );

希望这会有所帮助..!

于 2019-11-27T05:52:42.223 回答