我有这个任务。首先,我用一个src做一件事。然后我用另一个src做了另一件事。我如何将它们“合并”成一个管道?
gulp.task('css', function() {
gulp.src('site/patterns/site/site.scss')
.pipe(sass().on('error', sass.logError))
.pipe(autoprefixer())
.pipe(rename('index.css'))
.pipe(gulp.dest('assets/css'))
.pipe(minifyCss())
.pipe(rev())
.pipe(gulp.dest('assets/css'))
.pipe(rev.manifest())
.pipe(revDel({ dest: 'assets/css' }))
.pipe(gulp.dest('assets/css'))
.pipe(notify("CSS generated!"))
;
gulp.src( ['assets/css/index-*.css'], {read: false})
.pipe( revOutdated() ) // leave 2 recent assets (default value)
.pipe( cleaner() );
});
发布于 2016-05-02 22:43:23
你不能合并它们,也不能把它们变成一个单一的管道。这里有两个相关的任务。你应该这样对待他们。
您希望第二个管道仅在第一个管道完成后运行,这样所有的.css
文件都已生成到assests/css
中。因此,您将每个管道放入一个单独的任务中,并使第二个任务依赖于第一个任务:
gulp.task('generate-css', function() {
return gulp.src('site/patterns/site/site.scss')
.pipe(sass().on('error', sass.logError))
.pipe(autoprefixer())
.pipe(rename('index.css'))
.pipe(gulp.dest('assets/css'))
.pipe(minifyCss())
.pipe(rev())
.pipe(gulp.dest('assets/css'))
.pipe(rev.manifest())
.pipe(revDel({ dest: 'assets/css' }))
.pipe(gulp.dest('assets/css'))
.pipe(notify("CSS generated!"));
});
gulp.task('css', ['generate-css'], function() {
return gulp.src( ['assets/css/index-*.css'], {read: false})
.pipe( revOutdated() ) // leave 2 recent assets (default value)
.pipe( cleaner() );
});
https://stackoverflow.com/questions/36982472
复制相似问题