2017-01-23 95 views
1

我想从bower_components文件夹中将所有字体真棒字体移动到我的生成目录,但该任务不复制任何文件。使用gulp任务从鲍尔移动字体真棒字体

gulpfile.js

var gulp = require('gulp'), 
    sass = require('gulp-sass'), 
    cssnano = require('gulp-cssnano'), 
    uglify = require('gulp-uglify'), 
    rename = require('gulp-rename'), 
    concat = require('gulp-concat'), 
    notify = require('gulp-notify'); 

var config = { 
    bowerDir: 'bower_components' 
} 

gulp.task('fa', function() { 
    return 
     gulp.src(config.bowerDir + '/font-awesome/fonts/**.*') 
     .pipe(gulp.dest('assets/fonts/font-awesome/')); 
}); 

当我运行gulp fa它运行良好,但没有文件出现在我的assets/fonts/font-awesome目录。

我知道.pipe(gulp.dest())函数的作品,因为我有一个脚本功能,像这样:

gulp.task('scripts', function(){ 
    return gulp.src([ 
     'bower_components/jquery/dist/jquery.min.js', 
     'bower_components/jquery-validation/dist/jquery.validate.js', 
     'bower_components/foundation/js/foundation.min.js', 
     'assets/js/custom/app.js', 
    ]) 
    .pipe(concat('app.js')) 
    .pipe(rename({ suffix: '.min' })) 
    .pipe(uglify()) 
    .pipe(gulp.dest('assets/js/')) 
    .pipe(notify({ 
     message: 'Scripts minified' 
    })); 
}); 

任何想法?

编辑

我的文件夹结构是这样的:

assets/ 
--fonts/ 
----font-awesome/ 
gulpfile.js 
bower_components/ 
--font-awesome/ 
----fonts/ 
------fontawesome-webfont.eot 
------fontawesome-webfont.svg 
------fontawesome-webfont.ttf 
------fontawesome-webfont.woff 
------fontawesome-webfont.woff2 
+0

这是确切的代码,我使用 ' gulp.task('icons',function(){ return gulp.src('node_modules/font-awesome/fonts /**.*') .pipe(gulp.dest('fonts')); });' ...我可以确认它工作正常。也许检查错字或其他错误。 – Davey

回答

1

我想建议使用一口拷贝

var copy = require('gulp-copy');  

gulp.task('copy', function() { 
    gulp.src(['bower_components/font-awesome/fonts/*.*']) 
     .pipe(copy('assets/fonts/font-awesome/', { prefix: 3})); 

}); 
+0

刚刚尝试过。它已将'bower_components /'文件夹结构复制到构建目录中? –

+0

编辑我的问题 –

+0

我在我的答案中添加了“前缀”选项,它与你的文件夹结构 –