使用gulp和新的Microsoft bash shell,我正在设置一个gulp watch来将我的scss编译成css,以便在编译时出现错误时手表不会停止。
我已经设置了一个名为sass的gulp任务来执行此操作,我可以使用gulp sass
从命令行运行它,但是当我尝试使用gulp watch
运行gulp watch命令时我收到一个EPERM错误,我无法解决这个错误,让我的gulp.watch工作。以下是输出到命令行的错误消息。
我已经尝试更改我的node_modules文件夹的权限,以及使用sudo来做,但我仍然收到此错误。非常感谢帮助。
var gulp = require('gulp');
var sass = require('gulp-sass');
var plumber = require('gulp-plumber');
var notify = require('gulp-notify');
gulp.task('watch', ['sass'], function() {
gulp.watch('app/scss/**/*.scss', ['sass']);
})
gulp.task('sass', function() {
return gulp.src('app/scss/**/*.scss')
.pipe(customPlumber('Error Running Sass'))
.pipe(sass())
.pipe(gulp.dest('app/css'))
})
function customPlumber(errTitle){
return plumber({
//use notify plugin to report error as windows toaster message
errorHandler:notify.onError({
//Customizing error title
title:errTitle || "Error running Gulp",
message: "Error: <%= error.message %>",
})
});
}
答案 0 :(得分:3)
WSL不支持慢速/预览/制作铃声中的FS通知系统调用。在Fast环中,它支持跟踪WSL内部的更改。 Devs承诺支持跟踪Windows中所做的更改将很快添加。
相关链接: