没有gulp-如果它工作正常:
gulp.task('css', function() {
return gulp.src([
// 'bower_components/bootstrap/dist/css/bootstrap.css',
'app/stylesheets/main.less',
])
.pipe(less({
strictMath: true,
strictUnits: true,
}))
.pipe(concat('all.css', {newLine: '\n'}))
.pipe(prefixer('> 1%'))
.pipe(minifyCss())
.pipe(gulp.dest('public/css'));
});
Run Code Online (Sandbox Code Playgroud)
但是当我添加gulp-if到混合中时,gulpif管道返回到主流时不会返回任何内容:
gulp.task('css', function() {
return gulp.src([
'bower_components/bootstrap/dist/css/bootstrap.css',
'app/stylesheets/main.less',
])
.pipe(gulpif(/\.less$/,less({
strictMath: true,
strictUnits: true,
})))
.pipe(concat('all.css', {newLine: '\n'}))
.pipe(prefixer('> 1%'))
.pipe(minifyCss())
.pipe(gulp.dest('public/css'));
});
Run Code Online (Sandbox Code Playgroud)
这是为什么?我究竟做错了什么?如果我在gulp-if源代码中添加一些日志,我可以看到条件正在传递.
这是我的缩小gulp任务:
var gulp = require('gulp'),
useref = require('gulp-useref'),
gulpif = require('gulp-if'),
uglify = require('gulp-uglify'),
minifyCss = require('gulp-minify-css'),
ngmin = require('gulp-ngmin'),
ngAnnotate = require('gulp-ng-annotate');
gulp.task('minifyAll', function () {
return gulp.src('app/*.html')
.pipe(useref())
.pipe(gulpif('*.js', uglify(ngAnnotate())))
.pipe(gulpif('*.css', minifyCss()))
.pipe(gulp.dest('dist'));
});
Run Code Online (Sandbox Code Playgroud)
在js-file的情况下,我想首先通过ng-annotate和uglify移动它.我是新手,这就是为什么我不知道如何正确地做到这一点.