使用我们的 gulp 脚本,我们想为供应商(通过凉亭,见截图)和自定义样式创建不同的编译和缩小的 css 文件。但是,我们对供应商样式的任务并没有按预期工作。我们希望它遍历bower_components
.css 文件,将它们连接起来,缩小它们并将生成的文件保存vendor.min.css
到dist/styles
. 但是, Saidvendor.min.css
不会生成。.pipe()
我们尝试对语句中的一些命令进行注释,return
并怀疑它可能与concat()
函数有关。
鲍尔组件:
我们gulpfile.js
的部分内容包括故障任务:
var gulp = require('gulp'),
sass = require('gulp-sass'),
concat = require('gulp-concat'),
debug = require('gulp-debug'),
bower = require('gulp-main-bower-files'),
uglify = require('gulp-uglify'),
minify = require('gulp-clean-css'),
filter = require('gulp-filter'),
flatten = require('gulp-flatten'),
autoprefix = require('gulp-autoprefixer'),
sourcemaps = require('gulp-sourcemaps'),
rename = require('gulp-rename'),
imagemin = require('gulp-imagemin'),
del = require('del');
/**
* Predefined file-type filters to use with gulp-filter
*/
var filters = {
css: '**/*.css',
js: '**/*.js',
webFonts: ['**/*.otf','**/*.woff*', '**/*.woff2','**/*.ttf','**/*.eot','**/*.svg'],
images: ['**/*.png','**/*.gif','**/*.jpg','**/*.svg'],
movies: []
};
/**
* concatVendorCSS
* Create vendor.min.css from bower main files without bootstrap (as it is included in custom main.css)
* no autoprefixing included: should be done by source package
* scss-Files will be ignored - include them in /assets/styles/main.scss
*/
gulp.task('styles:vendor',['clean:vendor:styles'], function() {
console.log('concatenating vendor css files and moving to dist...');
var filterCSS = filter([filters.css], { restore: true });
return gulp.src('bower.json')
.pipe(bower())
.pipe(filterCSS)
.pipe(sourcemaps.init())
.pipe(flatten())
.pipe(concat('vendor.min.css'))
.pipe(autoprefix(apConfig))
.pipe(minify())
.pipe(sourcemaps.write())
.pipe(gulp.dest('dist/styles/'));
});
bower.json
文件:
{
"name": "ptype",
"homepage": "-",
"authors": [
"..."
],
"license": "MIT",
"private": true,
"dependencies": {
"css-hamburgers": "^0.5.0",
"bootstrap": "git://github.com/twbs/bootstrap.git#v4.0.0-alpha.6",
"font-awesome": "fontawesome#^4.6.3",
"jquery": "^3.2.1",
"selectize": "^0.12.4",
"swiper": "^4.0.6",
"jquery-focuspoint": "^1.1.3"
},
"overrides": {
"font-awesome": {
"main": [
"./fonts/FontAwesome.otf",
"./fonts/fontawesome-webfont.eot",
"./fonts/fontawesome-webfont.svg",
"./fonts/fontawesome-webfont.ttf",
"./fonts/fontawesome-webfont.woff",
"./fonts/fontawesome-webfont.woff2",
"./scss/font-awesome.scss"
]
}
}
}