Gulp不创build文件夹?
当我缩小我的CSS,我留下了不同的图书馆的字体不正确的path。 所以,我创build了一个任务,将字体从我的bower_components/
文件夹移到dist/public/fonts
:
gulp.task('doit', function() { gulp.src(["public/bower_components/bootstrap/dist/fonts/*", "public/bower_components/font-awesome/fonts/*"]) .pipe(gulp.dest("dist/public/fonts")); });
基本上,应该把我需要的任何字体到一个通用的字体文件夹,我的缩小的CSS现在应该能够访问。
但是运行后, dist/public/fonts
不存在。 为什么不?
我不完全理解你是src
-ing( public/bower_components
?)的path,但我相信你会想使用gulp.src
的base
选项 。
因为这两个球会有不同的基础,所以我build议把它分成两个单独的任务,build立第三个球,把它们合并成一个单一的任务。 否则,你需要进入合并stream或addSrc
插件。
gulp.task('copy:fonts:bootstrap', function () { return gulp.src( [ 'public/bower_components/bootstrap/dist/fonts/**/*' ], { base: 'public/bower_components/bootstrap/dist/fonts' } ) .pipe(gulp.dest('dist/public/fonts')); }); gulp.task('copy:fonts:fontawesome', function () { return gulp.src( [ 'public/bower_components/font-awesome/fonts/**/*' ], { base: 'public/bower_components/font-awesome/fonts' } ) .pipe(gulp.dest('dist/public/fonts')); }); gulp.task('copy:fonts', ['copy:fonts:bootstrap', 'copy:fonts:fontawesome']);
根据这篇文章 ,指定你的src是这样的:
gulp.src(['src/js/**/*.js'], { base: 'src' }) .pipe(foo()) .pipe(gulp.dest("./public/"));
它会自动为您创build目标目录。 在这种情况下,如果“js”文件夹不存在,将会公开创build。