我想对不在./src/components目录中的javascript文件运行minifaction.我试过这个:
gulp.task('index', function () {
var assets = useref.assets();
return gulp.src('src/index.html')
.pipe(assets)
.pipe(gulpif('!./src/components/** && *.js', uglify()))
.pipe(gulpif('*.css', minifyCss()))
.pipe(assets.restore())
.pipe(useref())
.pipe(gulp.dest('dist'));
});
Run Code Online (Sandbox Code Playgroud)
但它似乎没有工作(即无论如何它在./src/components中对js文件进行缩小).
所有帮助表示赞赏.提前致谢.
面对真正的问题更新
好的,这是重点.gulp-if用于gulp-match评估条件.在那里你可以使用一组globs:
.pipe(gulpif(['*.js', '!./src/components/**'], uglify())
Run Code Online (Sandbox Code Playgroud)
还是为了其他人:
gulp-if可能是错误的方法.我建议一个流队列.
var queue = require('streamqueue')
...
return queue.queue(
// all the JS files without components
gulp.src(['**/*.js', '!./src/components/**/'])
.pipe(uglify()),
// all JS files in components
gulp.src('./src/components/**/*.js')
)
.done()
.pipe(doSomething())
Run Code Online (Sandbox Code Playgroud)
这样,您可以对所有非组件执行单独的任务,然后执行常用过程.
代码未经过测试,但您可以查看文档.
| 归档时间: |
|
| 查看次数: |
4138 次 |
| 最近记录: |