标签:www stream hub tps pipe pre save pac 文档
更多gulp常用插件使用请访问:gulp常用插件汇总
gulp-rev-rewrite这是一款重写对由gulp-rev
修订的资产的引用。
更多使用文档请点击访问gulp-rev-rewrite工具官网。
一键安装不多解释
npm install --save-dev gulp-rev-rewrite
最常见的使用模式包括两个步骤:
const { src, dest, series } = require('gulp');
const rev = require('gulp-rev');
const revRewrite = require('gulp-rev-rewrite');
// Step 1
function revision() {
return src('dist/assets/**/*.{css,js}')
.pipe(rev())
.pipe(dest('dist/assets'))
.pipe(rev.manifest())
.pipe(dest('dist/assets'));
}
// Step 2
function rewrite() {
const manifest = src('dist/assets/rev-manifest.json');
return src('dist/**/*.html')
.pipe(revRewrite({ manifest }))
.pipe(dest('dist'));
}
exports.default = series(revision, rewrite);
或者,您可以将结合使用这两个步骤 gulp-filter
。
const { src, dest } = require('gulp');
const filter = require('gulp-filter');
const rev = require('gulp-rev');
const revRewrite = require('gulp-rev-rewrite');
function revision() {
const assetFilter = filter(['**', '!**/*.html'], { restore: true });
return src('dist/**')
.pipe(assetFilter)
.pipe(rev()) // 重命名除html文件之外的所有文件
.pipe(assetFilter.restore)
.pipe(revRewrite())
.pipe(dest('dist'));
}
exports.default = revision;
revRewrite([options])
options
Object
manifest
Stream
例如gulp.src()
)prefix
String
ModifyUnreved
,modifyReved
Function
{"js/app.js.map": "js/app-98adc164.js.map"}
如果您只想删除文件的js/
路径.map
(因为它们是源映射,并且对它们的引用是相对的,而不是绝对的),则可以执行以下操作:
const { src, dest } = require('gulp');
function replaceJsIfMap(filename) {
if (filename.includes('.map')) {
return filename.replace('js/', '');
}
return filename;
}
function rewrite() {
return src('dist/**/*.js')
.pipe(revRewrite({
manifest: src('rev-manifest.json'),
modifyUnreved: replaceJsIfMap,
modifyReved: replaceJsIfMap
}))
.pipe(dest('dist'));
}
exports.default = rewrite;
标签:www stream hub tps pipe pre save pac 文档
原文地址:https://www.cnblogs.com/jiaoshou/p/12108779.html