是否可以依赖于我的Theme文件夹构建一个css文件?问题是我有几个主题,使用相同的设置gulp应该采取Theme.scss并构建一个css文件到Theme,Theme1等。
gulp.task('sass', function () {
return gulp.src('Css/Clients/**/theme.scss') // Gets all files ending with .scss
.pipe(sass({outputStyle: 'compact'}))
.pipe(gulp.dest('app/css'))
.pipe(browserSync.reload({
stream: true
}))
});
gulp.task('watch', ['browserSync', 'sass', 'php'], function () {
gulp.watch('Css/**/*.scss', ['sass']);
})
编辑:
我尝试了解决问题的方法,我看起来像这样:
但我只需要在theme1文件夹中的主题文件夹ander theme1.css中的theme.css,依此类推!有什么建议吗?
gulp.task('sass', function () {
var folders = getFolders(scriptsPath);
var tasks = folders.map(function(folder) {
return gulp.src(path.join(scriptsPath, folder, '/**/*.scss'))
.pipe(sass({outputStyle: 'compact'}))
// concat into foldername.js
.pipe(concat(folder + '.css'))
// write to output
.pipe(gulp.dest(scriptsPath))
// write to output again
.pipe(gulp.dest(scriptsPath));
});
return merge(tasks);
console.log(folders);
});
答案 0 :(得分:3)
您可以指定多个目的地:
gulp.task('sass', function () {
return gulp.src('Css/Clients/**/theme.scss') // Gets all files ending with .scss
.pipe(sass({outputStyle: 'compact'}))
.pipe(gulp.dest('app/css'))
.pipe(gulp.dest('app/Theme'))
.pipe(gulp.dest('app/Theme1'))
.pipe(browserSync.reload({
stream: true
}))
});
答案 1 :(得分:0)
谢谢你们!
gulp.task('sass', function () {
var folders = getFolders(scriptsPath);
var tasks = folders.map(function(folder) {
return gulp.src(path.join(scriptsPath, folder, '/**/*.scss'))
.pipe(sass({outputStyle: 'compact'}))
// concat into foldername
.pipe(concat(folder + '.css'))
// write to output
.pipe(gulp.dest(scriptsPath+folder))
});
});