我正在使用以下Gulp任务从Font Awesome Bower包中复制所需的字体,这可以很好地工作并输出这样的文件:
应用程序>构建>字体>字体文件
gulp.task('copyfonts', function() {
gulp.src('./bower_components/components-font-awesome/fonts/**/*.{ttf,woff,eof,svg}')
.pipe(gulp.dest('./fonts'));
});
我正在尝试重构这个任务,以便它使用**通配符从任何bower包(例如Bootstrap)中移动字体
gulp.task('copyfonts', function() {
gulp.src('./bower_components/**/fonts/**/*.{ttf,woff,eof,svg}')
.pipe(gulp.dest('./fonts'));
});
应用程序>构建>字体>
引导>字体>字体文件字体真棒>字体>字体文件
TL;DR
使用我的第二种方法是复制如上所示的文件,复制包文件夹,并将其作为子文件夹使用"字体"文件夹进行移动。有人能告诉我哪里出了问题吗。。。
我来这里参加聚会有点晚了,但对于将来偶然发现这一点的人来说:我相信你的字体glob中有一个拼写错误:eof应该是eot。
gulp.src('./bower_components/**/fonts/**/*.{ttf,woff,eof,svg}')
应该是
gulp.src('./bower_components/**/fonts/**/*.{ttf,woff,eot,svg}')
总是依赖包将字体保存在特定文件夹中不是最好的主意,这些事情可能会改变。
可能您缺少字体之前的另一个/**/
(一个文件夹级别)。或者为什么所有这些检查,你知道字体会有什么扩展,也许可以添加像**/*.{ttf,woff,eof,svg}
这样的通配符
你有没有试过用gullow-bower主文件来管理它?https://github.com/ck86/main-bower-files
您可以测试此任务我靠它工作
gulp.task('copyfonts', () =>
gulp.src('./app/assets/fonts/*')
.pipe(gulp.dest('./dist/assets/fonts'))
);
我遇到了同样的问题。在运行我的gulp构建后,我的字体从未成功复制到dest/fonts文件夹。问题出现在我的gull.js文件中,行如下:
function fonts() {
return src('app/fonts/**/*.{eot,svg,ttf,woff,woff2}')
.pipe($.if(!isProd, dest('.tmp/fonts'), dest('dist/fonts')));
};
编辑完最后一行后,我的字体成功复制过来了!
function fonts() {
return src('app/fonts/**/*.{eot,svg,ttf,woff,woff2}')
.pipe(dest('dist/fonts'));
};