在jade中对已更改的文件运行gulp

时间:2014-11-12 17:02:15

标签: javascript gulp

我在一个/ source文件夹中看着jade原型,结构如下:

/source/prototypes/my-prototype-1/index.jade
/source/prototypes/my-prototype-2/index.jade

这是gulp的任务:

gulp.task('jade', function() {
    return gulp.src(['source/**/*.jade'])
    .pipe(changed('build/prototypes/', {extension: '.html'}))
    .pipe(jade({
        pretty: true
    }))
    .pipe(gulp.dest('build'))
    .on('error', gutil.log)
    .pipe(notify({ message: 'Jade task is complete' }));
});

原型编译成:

/build/prototypes/my-prototype-1/index.jade
/build/prototypes/my-prototype-2/index.jade

问题在于,当所有原型中的任何原型发生变化时,它们仍然会被重新编译。这可能是因为我将原型嵌套在文件夹中的方式吗?

1 个答案:

答案 0 :(得分:0)

gulp-changed 文档说第一个参数是

  

目标目录。与你输入gulp.dest()相同。

尝试替换

.pipe(changed('build/prototypes/', {extension: '.html'}))

.pipe(changed('build', {extension: '.html'}))