我正在使用一个非常简单的Gulp设置与SASS和BrowserSync。
//require plugins here
// Paths
var styleSRC = './assets/css/style.scss'; // Path to main .scss file.
var styleDestination = './ ';
var styleWatchFiles = './assets/css/**/*.scss';
// BrowserSync
gulp.task('browser-sync', function () {
browserSync.init({
proxy: projectURL,
open: false,
injectChanges: true
});
});
//Task
gulp.task('styles', function () {
gulp.src(styleSRC)
.pipe(sass({
errLogToConsole: true,
}))
.on('error', console.error.bind(console)).pipe(autoprefixer(AUTOPREFIXER_BROWSERS))
.pipe(gulp.dest(styleDestination))
.pipe(browserSync.reload({
stream: true
}));
});
// Watch
gulp.task('default', ['styles', 'browser-sync'], function () {
gulp.watch(styleWatchFiles, ['styles']);
});
问题是虽然此设置无法识别何时创建新的部分文件。因此,如果我创建一个局部,然后将其添加到style.scss
,则不会发生任何事情,Sass未编译 - >所以你从控制台手动调用任务。
添加新部分时是否可以自动编译Sass?
答案 0 :(得分:1)
如果您删除' ./'从源路径它将按照您期望的方式工作
据我所知这是一个仅限Windows的问题 这是一个描述问题的github问题:https://github.com/gulpjs/gulp/issues/1422
应该在gulp 4.x中修复,但那仍然是alpha