如何使“ gulp watch”命令起作用?

时间:2019-09-01 11:54:01

标签: javascript gulp-watch

浏览器控制台不会监视错误,但是当我尝试在git控制台中运行命令时出现错误。

let gulp = require('gulp');
let sass = require('gulp-sass');
let watch = require('gulp-watch');
let browserSync = require('browser-sync');

gulp.task('sass', function() {
    return gulp.src('src/scss/index.scss')
        .pipe(sass().on('error', sass.logError))
        .pipe(gulp.dest('src/css/index.css'))
});

gulp.task('sass:watch', function() {
    gulp.watch('src/scss/index.scss', ['sass']);
});

gulp.task('browser-sync', function() {
    browserSync({
        server: {
            baseDir: 'src'
        },
        notify: false
    });
});

链接到我的存储库https://github.com/dzhulay/Step-Ham

1 个答案:

答案 0 :(得分:1)

gulp.watch 函数需要文件列表和函数作为第二个参数。

您必须使用gulp.parallelgulp.series生成函数,例如您的情况:

gulp.task('watch', function() {
    gulp.watch('src/scss/index.scss', gulp.series('sass'));
});

此外,为了避免注释中指定的“文件存在”错误,请在您的sass任务中实现“ gulp-chmod”,例如:

var chmod = require('gulp-chmod');

gulp.task('sass', function() {
return gulp.src('src/scss/index.scss')
    .pipe(chmod(0o755))
    .pipe(sass().on('error', sass.logError))
    .pipe(gulp.dest('src/css/index.css'))
});