我有以下设置:
// watch for changes
gulp.task('watch', function () {
gulp.watch('./assets/**/*.less', ['compile-less']);
});
gulp.task("compile-less", () => {
return gulp.src('./assets/build-packages/*.less')
.pipe($.less({
paths: [ $.path.join(__dirname, 'less', 'includes') ]
}))
.pipe(gulp.dest(OutputPath)); // ./dist/styles/
});
所以基本上每当开发人员在较少的文件中更改某些内容时,它就会运行任务'无需编译'。任务'无需编译'构建我们的包少文件(包括所有@imports)。随机较少文件中的第一个更改有效,所有较少的文件正在构建。第二次运行任务但是当我将某些内容更改为导入的较少文件时,我生成的dist文件夹没有更新。我想知道监视任务和编译任务的组合是否以某种方式缓存文件。因为如果我手动运行无编译任务,它每次都可以工作。
有没有人有同样的经历?
答案 0 :(得分:3)
gulp-less
版本4.0.0有一个奇怪的缓存问题。
安装gulp-less@3.5.0
并解决问题。
这将是固定的。查看https://github.com/stevelacy/gulp-less/issues/283#ref-issue-306992692