我正在尝试设置一个Gulp任务,通过使用.ttf
和gulp-ttf2woff
插件将gulp-ttf2woff2
字体转换为webfont格式。分别将源字体转换为.woff
和.woff2
。
我已经推出了这两个独立的函数,每个函数对应一个插件:
function fontsW(done) {
src(fontsSrc)
.pipe(ttf2woff())
.pipe(dest(fontsDist))
done();
};
function fontsW2(done) {
src(fontsSrc)
.pipe(ttf2woff2())
.pipe(dest(fontsDist))
done();
};
是否有可能将它们凝结在一个功能中,让我们称它为function fonts(done) {}
,它同时处理两个插件?
基本上,我想要这样的东西
function fontsW2(done) {
src(fontsSrc)
.pipe(ttf2woff())
.pipe(ttf2woff2())
.pipe(dest(fontsDist))
done();
};
其中ttf2woff()
和ttf2woff2()
都接收src
的输出并将自己处理的文件提供给dest
。
你可以这样做:
function fontsW(done) {
src(fontsSrc)
.pipe(ttf2woff())
.pipe(dest(fontsDist))
src(fontsSrc)
.pipe(ttf2woff2())
.pipe(dest(fontsDist))
done();
};
您可以定义一个并行调用这两个函数的任务:
gulp.task('fonts', gulp.parallel(ttf2woff, ttf2woff2));
您可以在其他任务中使用此任务(例如,从default
任务中调用它),也可以直接从终端调用它:
gulp fonts