gpt4 book ai didi

gulp - 尽管有 errorHandler 回调,但在 Gulp-plumber 捕获的错误已修复后,观察任务未继续

转载 作者:行者123 更新时间:2023-12-04 11:36:37 25 4
gpt4 key购买 nike

所以我得到了这个整洁的 gulpfile 和所有的东西,除了这一件事外,它工作顺利。

我在运行 gulp-plumber为了阻止监视任务因错误而崩溃,错误被它捕获,但是当我修复错误时,观察者拒绝继续。我添加了 handleError回调,但它似乎没有做任何事情,即使 this article说应该。这让我发疯,因为我知道有人在没有任何这些的情况下让它工作,但我找到的解决方案似乎都不起作用。我错过了什么吗?

编辑:当我在 _lists.scss 中出现错误时例如抛出的错误如下所示:

[22:04:43] Plumber found unhandled error:
Error in plugin 'gulp-sass'
Message:
styles\partials\_lists.scss
1:1 invalid top-level expression

这是否意味着我还必须使用 on.('error', function() {}) 手动处理错误?因为我认为这是水管工的目的,删除手动错误处理。我什至尝试使用它手动捕获错误,但它只是在控制台中吐出错误并拒绝像以前一样继续。

这是水管工管道部分:
// Compile our SCSS into minified CSS
gulp.task('styles', function() {
return gulp.src('styles/main.scss')
.pipe(plumber({
handleError: function (err) {
console.log(err);
this.emit('end');
}
}))
.pipe(sass({ style: 'expanded' }))
.pipe(autoprefixer('last 2 version', 'safari 5', 'ie 8', 'ie 9', 'opera 12.1', 'ios 6', 'android 4'))
.pipe(gulp.dest('dist/styles'))
.pipe(rename({ suffix: '.min' }))
.pipe(minifycss())
.pipe(gulp.dest('dist/styles'))
.pipe(notify({ message: 'Finished compiling SCSS' }))
});

这是整个 gulpfile.js :
var gulp         = require('gulp'),
sass = require('gulp-sass'),
autoprefixer = require('gulp-autoprefixer'),
minifycss = require('gulp-minify-css'),
plumber = require('gulp-plumber'),
jshint = require('gulp-jshint'),
uglify = require('gulp-uglify'),
imagemin = require('gulp-imagemin'),
rename = require('gulp-rename'),
concat = require('gulp-concat'),
notify = require('gulp-notify'),
cache = require('gulp-cache'),
livereload = require('gulp-livereload'),
htmlmin = require('gulp-htmlmin'),
del = require('del');

// Minify our HTML
gulp.task('html', function() {
return gulp.src('*.html')
.pipe(htmlmin({ collapseWhitespace: true }))
.pipe(gulp.dest('dist'))
});

// Compile our SCSS into minified CSS
gulp.task('styles', function() {
return gulp.src('styles/main.scss')
.pipe(plumber({
handleError: function (err) {
console.log(err);
this.emit('end');
}
}))
.pipe(sass({ style: 'expanded' }))
.pipe(autoprefixer('last 2 version', 'safari 5', 'ie 8', 'ie 9', 'opera 12.1', 'ios 6', 'android 4'))
.pipe(gulp.dest('dist/styles'))
.pipe(rename({ suffix: '.min' }))
.pipe(minifycss())
.pipe(gulp.dest('dist/styles'))
.pipe(notify({ message: 'Finished compiling SCSS' }))
});

// Concat and compile our JS into a minified file
gulp.task('scripts', function() {
return gulp.src('scripts/**/*.js')
.pipe(jshint())
.pipe(jshint.reporter('default'))
.pipe(concat('main.js'))
.pipe(gulp.dest('dist/scripts'))
.pipe(rename({ suffix: '.min' }))
.pipe(uglify())
.pipe(gulp.dest('dist/scripts'))
.pipe(notify({ message: 'Finished compiling scripts' }));
});

// Compress our images
gulp.task('images', function() {
return gulp.src('images/**/*.js')
.pipe(cache(imagemin({ optimizationLevel: 5, progressive: true, interlaced: true })))
.pipe(gulp.dest('dist/images'))
.pipe(notify({ message: 'Finished compiling images' }));
});

// Clean/empty our dist folder
gulp.task('clean', function(cb) {
del(['dist/styles', 'dist/scripts', 'dist/images'], cb)
});

// Run all our tasks when using 'gulp' command in CLI
gulp.task('default', ['clean'], function() {
gulp.start('html', 'styles', 'scripts', 'images');
});

// Watch our files for changes
gulp.task('watch', function() {
gulp.watch('styles/**/*.scss', ['styles']);
gulp.watch('scripts/**/*.js', ['scripts']);
gulp.watch('images/**/*', ['images']);
});

最佳答案

这可能只是一个错字。

尝试更换 handleErrorerrorHandler .

关于gulp - 尽管有 errorHandler 回调,但在 Gulp-plumber 捕获的错误已修复后,观察任务未继续,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30629222/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com