我正在尝试将多个 scss 文件合并为一个,类似于Gulp:如何创建编译多个 SASS 文件的任务?; 但是我的一个文件在我的 gulpfile 之上:
/project_root/
fe/
common/
app/src/main/styles/main.scss
gulpfile.js
module/src/foo/styles/main.scss
我的 gulpfile 看起来像这样:
gulp.task('styles', function() {
return gulp
.src(
[
'./app/src/**/main.scss', // included
'../module/src/**/main.scss' // NOT included
],
{ base: '.'} // this doesn't seem to matter
)
.pipe( plumber() )
.pipe(
sass({
errLogToConsole: true,
sourceComments : 'normal'
})
)
// …
.pipe(rename('app.css'))
.pipe(gulp.dest('../build/'));
});
*.js
我对我的 js (而不是)做基本相同的事情main.scss
,它工作得很好:/
更新:我刚刚注意到,当我从上面删除重命名时,第二个 main.scss 确实得到处理,并且在同一目录而不是 dest 目录中创建了一个 main.css。
更新:我尝试让源路径从它们的共同祖先开始'../{common,module}/**/main.scss'
(这显着影响了性能),现在我得到了第二个源文件的 2 个副本。