码迷,mamicode.com
首页 > 其他好文 > 详细

gulp常用插件之rev-del使用

时间:2020-01-12 11:21:09      阅读:84      评论:0      收藏:0      [点我收藏+]

标签:更改   aos   pex   需要   als   this   manifest   www   pac   

更多gulp常用插件使用请访问:gulp常用插件汇总


rev-del这是一款从模块(如gulp-rev)生成的修订清单中删除旧的、未使用的指纹文件。

更多使用文档请点击访问rev-del工具官网

安装

一键安装不多解释

npm install --save-dev rev-del

使用

revDel({
    oldManifest: 'rev-manifest.json',
    newManifest: { /* 清单 */ },
    suppress: true, 
    deleteMapExtensions: false
}, function (err, filesDeleted) {
    // ...
});

清单可以是对象或文件路径。oldManifest默认为“rev manifest.json”(这是gulp-rev的默认输出),而newManifest没有默认值;它假定您已经将其存储在内存中,因此将其作为对象传递更有效。

如果设置为false,则在ReVestPrime.JSON不存在时会引发错误。通常情况下,您不想更改:通常,第一次运行修订脚本时,清单还不存在。

当设置为true时,deleteMapExtensions将尝试查找gulp-sourcemaps生成的属于旧清单中已更改文件的任何“.map”文件,并将其删除。

rev-del可以与Gulpgulp-rev一起使用。您需要dest在选项或base清单选项中指定-除非您将所有内容都写入根目录。

var gulp = require('gulp');
var rev = require('gulp-rev');
var revDel = require('rev-del');

gulp.task('default', function () {
    return gulp.src('src/*.css')
        .pipe(rev())
        .pipe(gulp.dest('dist'))
        .pipe(rev.manifest())
        .pipe(revDel({ dest: 'dist' }))           // <--
        .pipe(gulp.dest('dist'));
});

如果不使用默认值,则可以为它传递旧清单的名称:

var gulp = require('gulp');
var rev = require('gulp-rev');
var revDel = require('rev-del');

gulp.task('default', function () {
    return gulp.src('src/*.css')
        .pipe(rev())
        .pipe(gulp.dest('dist'))
        .pipe(rev.manifest('my-manifest.json'))
        .pipe(revDel('some-other-manifest.json'))        // <--
        .pipe(gulp.dest('dist'));
});
 

请注意,如果清单的名称与给定的路径不同,则仅需要更改清单的名称rev.manifest():如果仅更改清单的名称,则rev-del会很好地处理它:

// This works
var gulp = require('gulp');
var rev = require('gulp-rev');
var revDel = require('rev-del');

gulp.task('default', function () {
    return gulp.src('src/*.css')
        .pipe(rev())
        .pipe(gulp.dest('dist'))
        .pipe(rev.manifest('my-manifest.json'))
        .pipe(revDel({ dest: 'dist' }))                          // <--
        .pipe(gulp.dest('dist'));
});
 

您也可以将指定base为选项之一。同样,如果您已将其交给,则无需执行此操作rev.manifest()

您也可以添加force: true作为选项。这将传递给底层的del插件,该插件接受它以允许在当前工作目录之外进行删除。当您遇到诸如“无法删除当前工作目录之外的文件/文件夹”之类的错误时,这很有用。可以使用该force选项覆盖。”

gulp常用插件之rev-del使用

标签:更改   aos   pex   需要   als   this   manifest   www   pac   

原文地址:https://www.cnblogs.com/jiaoshou/p/12182131.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!