下面的代碼沒有正確合併rev-manifest.json文件。 我循環了幾個JS任務,只有一個被合併,儘管散列文件正在被創建和正確存儲。gulpfile.js:rev.manifest()不合並幾個JS任務
我已經嘗試了很多東西,我檢查了gulp-rev和一些用戶接縫有類似的問題。其中一些正在創建幾個清單文件,並在最後進行實際合併。我想放棄這個解決方案,因爲它很慢很醜。
如果我評論concat(...)行清單文件註冊所有的JS任務。
這是一個錯誤還是我在這裏錯過了什麼?
一飲而盡3.9.1 一飲而盡,CONCAT 2.6.0 一飲而盡-REV 7.0.0
var gulp = require('gulp');
var less = require('gulp-less');
var minifycss = require('gulp-minify-css');
var jshint = require('gulp-jshint');
var uglify = require('gulp-uglify');
var concat = require('gulp-concat');
var rev = require('gulp-rev');
var jsFiles = {
\t task1: [
\t \t './path/file1.js'
\t ],
\t task2: [
\t \t './path/file2.js',
\t './path/file2.js'
\t ]
};
function jsTask(key) {
\t gulp.task(key, function() {
\t \t gulp.src(jsFiles[key])
\t \t \t .pipe(jshint())
\t \t \t .pipe(jshint.reporter('default'))
\t \t \t .pipe(uglify())
\t \t \t // IT WORKS WHEN I COMMENT THIS LINE
\t \t \t .pipe(concat(key + '.min.js'))
\t \t \t .pipe(rev())
\t \t \t .pipe(gulp.dest('./public/js'))
\t \t \t .pipe(rev.manifest({merge:true }))
\t .pipe(gulp.dest('.'));
\t });
}
gulp.task('less', function() {
\t return gulp.src(['./path/less/*.less'])
\t \t .pipe(less({errLogToConsole: true}))
\t \t .pipe(minifycss())
\t \t .pipe(rev())
\t \t .pipe(gulp.dest('./path/public/css'))
\t \t .pipe(rev.manifest({merge:true }))
.pipe(gulp.dest('.'));
});
for (var key in jsFiles) {
\t jsTask(key);
}
var defaultTasks = ['less'];
for (var key in jsFiles) {
\t defaultTasks.push(key);
}
gulp.task('default', defaultTasks);