0

这是我的gulpfile.js内容:

const fs    = require( 'fs' );
const gulp  = require( 'gulp' );


exports.watch = gulp.series( watch );


function watch() {

    const file = 'src/style.scss';

    console.log( fs.readFileSync( file ).length );

    gulp.watch( file, gulp.series( sass ) );
}


function sass( done ) {
    console.log( 'Success!' );
    done();
}

当我跑步时gulp watch,它开始观看,但所做的更改src/style.scss不会反映。我可以在控制台上看到文件内容的长度,但永远看不到成功!信息。

在这里发布之前,我一遍又一遍地浏览了 Gulp4 文档,检查了很多关于 Gulp Watch 的解决方案,包括这个,但无法找出确切的问题。

非常感谢您对此提供的帮助。提前致谢。


更新

以下代码在 Gulp 上按预期工作3.9.1

const gulp = require( 'gulp' );


gulp.task( 'default', () => {
    gulp.watch( 'src/style.scss', [ 'sass' ] );
});


gulp.task( 'sass', () => {
    console.log( 'Success!' );
});

但是以下一个不适用于 Gulp4.0.0

const gulp = require( 'gulp' );


exports.default = gulp.series( watch );


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


function sass( done ) {
    console.log( 'Success!' );
    done();
}

环境:

  • 操作系统:CentOS Linux 版本 7.6.1810(核心)
  • NPM:6.4.1
  • 节点:v10.15.1

我是在犯什么愚蠢的错误,还是一个BUG?

4

0 回答 0