:もっとしてください訪問使用する一般的なプラグインを飲み込むゴクゴク普通のプラグイン概要を
一息-REV a.css、問題を解決するためのキャッシュCDN、これは、ハッシュ値のランダムな文字列で、静的なファイルである- >-d2f3f35d3.css。ファイル名のパスの対応関係を保存するJSONを生成しながら、リソースの静的コンテンツに応じてファイル名をパッキング、MD5署名を生成するには、MD5署名が追加されます。
rev.manifest.json
:ソースファイルを生成し、ハッシュファイルの後にマッピングテーブルを追加
gulp-rev
缶でプラグインのみの接尾辞を追加し、あなたがパスを交換したい場合は、あなたがする必要がある、HTMLに代替パスを話すことができませんgulp-rev-collector
文書のグレーターの使用、訪問ゴクゴク-REVツール公式サイトをクリックしてください。
インストール
キーのインストール多くの説明
npm install --save-dev gulp-rev
使用
const gulp = require('gulp');
const rev = require('gulp-rev');
exports.default = () => (
gulp.src('src/*.css')
.pipe(rev())
.pipe(gulp.dest('dist'))
);
API
rev()
:ハッシュサフィックスを追加するための静的ファイルrev.manifest(path, options)
:Makefileのマップpath
(表ファイル・ストレージ・パス):
種類:string
デフォルト:rev-manifest.json
テーブルファイルストレージ・パス。options
(オプション):
種類:オブジェクトbase
タイプ:string
デフォルト:process.cwd()
マニフェストファイルのベースカバー。cwd
タイプ:string
デフォルト:process.cwd()
現在の作業ディレクトリのマニフェストファイルをカバーします。merge
(合併)
タイプ:boolean
デフォルト:false
既存のマニフェストファイルを統合。transformer
(変圧器)
タイプ:object
デフォルト:JSON
とparse
し、stringify
オブジェクトのメソッド。これは代わりに、カスタムコンバータを提供するために使用することができJSON
、デフォルトのマニフェストファイルコンバータ。
元のパス
に格納された元のファイルパスのプラグインソース file.revOrigPath
。便利になることがあり、資産の書き換えへの参照、のようなもののために。
資産ハッシュ
ハッシュは、ファイルの各リビジョンのために格納されているプラグインソース file.revHash
。カスタムファイルリストの名前を変更するか、別のフォーマットを構築するためにあなたはそれを使用することができます。
資産インベントリ
const gulp = require('gulp');
const rev = require('gulp-rev');
exports.default = () => (
// By default, Gulp would pick `assets/css` as the base,
// so we need to set it explicitly:
gulp.src(['assets/css/*.css', 'assets/js/*.js'], {base: 'assets'})
.pipe(gulp.dest('build/assets')) // 复制原资产build目录
.pipe(rev())
.pipe(gulp.dest('build/assets')) // 写rev的资产build目录
.pipe(rev.manifest())
.pipe(gulp.dest('build/assets')) // 写入清单以build目录
);
改訂されたルートへの元のパスをマップする資産の一覧が書き込まれますbuild/assets/rev-manifest.json
。
{
"css/unicorn.css": "css/unicorn-d41d8cd98f.css",
"js/unicorn.js": "js/unicorn-273c2c123f.js"
}
デフォルトでは、rev-manifest.json
それは全体として置き換えられます。既存のリストをマージするために、merge: true
出力先(例えば、セットbase
に送達します)rev.manifest()
。
const gulp = require('gulp');
const rev = require('gulp-rev');
exports.default = () => (
// By default, Gulp would pick `assets/css` as the base,
// so we need to set it explicitly:
gulp.src(['assets/css/*.css', 'assets/js/*.js'], {base: 'assets'})
.pipe(gulp.dest('build/assets'))
.pipe(rev())
.pipe(gulp.dest('build/assets'))
.pipe(rev.manifest({
base: 'build/assets',
merge: true // 与现有清单合并(如果存在)
}))
.pipe(gulp.dest('build/assets'))
);
あなたはコールする選択することができますrev.manifest('manifest.json')
別のパスまたはファイル名を指定していることを。