0

タスクに問題がありgulp-rev-allます。コードを変更するたびに、新しいリビジョン ファイルが生成されますが、古いリビジョン ファイルはそこに残されます。

これが私の一気飲みの仕事です:

var gulp         = require('gulp');
var RevAll       = require('gulp-rev-all');

gulp.task('js', function() {

    var revAll = new RevAll();

    return gulp.src(opt.Src + 'scripts.js')
        // Add a hash to the file
        .pipe(revAll.revision())
        // Save the hashed css file
        .pipe(gulp.dest(path.js))
        // Write the manifest file
        .pipe(revAll.manifestFile())
        .pipe(gulp.dest(path.js + 'rev'));
});

したがって、これは魅力のように機能します。rev(のような:)とファイルを含むファイルがscripts.0ad8ecf1.js表示されmanifest.jsonます。問題は、コードを変更するたびにscripts.js、別のハッシュを持つ新しいファイルが生成され、古いファイルが上書きまたは削除されないことです。したがって、私のフォルダーは次のようになります。

scripts.0ad8ecf1.js
scripts.7e3fa506.js
scripts.056ddda0.js

古いファイルを新しいファイルに置き換えることができないようです。これを達成するために誰かが私を助けたり、正しい方向に向けたりできますか?

4

1 に答える 1

1

gulp-rev-all はこれを行わないため、別のプラグインでファイルを削除する必要があります。

たとえば、「del」パッケージ ( https://www.npmjs.com/package/del )を使用できます。

そして、次のような「削除タスク」を作成します。

var del = require('del');

/**
* Deletes all files inside the /foo/scripts/ folder
*/
gulp.task('purge:foo', function() {

    return del.sync(['foo/scripts/**'], function (err, deletedFiles) {
        if (err) {
            console.log(err);
        }
        if (deletedFiles) {
            console.log('Elements deleted:', deletedFiles.join(', '));
        }
    });
});
于 2015-12-07T12:03:03.760 に答える