这是一个简化的例子,但我不能让它工作。我正试图将这些步骤构建到我的工作流程中……
- 查找文件名_head.html(这是我稍后组装的一个包含的文件片段) 查看压缩后的CSS文件
- 修改CSS
- 按住新文件名不放
- 将散列文件名写入步骤1中抓取的HTML文件
这里是导致严重崩溃的相关代码
控制台输出截图:http://cl.ly/X8Es
var gulp = require('gulp'),
rev = require('gulp-rev');
revReplace = require('gulp-rev-replace');
replace = require('gulp-replace');
filter = require('gulp-filter');
useref = require('gulp-useref');
gulp.task("revtest", function() {
var cssFilter = filter('css/*.min.css');
return gulp.src("snippets/_head.html")
.pipe(cssFilter)
.pipe(cssFilter.restore())
.pipe(rev())
.pipe(useref.restore())
.pipe(useref())
.pipe(revReplace())
.pipe(gulp.dest('./'));
});
我也遇到过类似的问题。查看源代码,这应该可以工作:
var gulp = require('gulp'),
rev = require('gulp-rev');
revReplace = require('gulp-rev-replace');
replace = require('gulp-replace');
filter = require('gulp-filter');
useref = require('gulp-useref');
gulp.task("revtest", function() {
var cssFilter = filter('css/*.min.css');
var assets = useref.assets();
return gulp.src("snippets/_head.html")
.pipe(cssFilter)
.pipe(cssFilter.restore())
.pipe(rev())
.pipe(assets.restore())
.pipe(useref())
.pipe(revReplace())
.pipe(gulp.dest('./'));
});