gulp.jsのプラグインを作りたい #javascript #gulp.js version 2
:追加された部分
:削除された部分
(差分が大きい場合、文字単位では表示しません)
gulp.jsのプラグインを作りたい #javascript #gulp.js
こんなgulp.jsのタスクを書いた。用途としてはassetファイルのcache bustering用にファイルのハッシュ値を保存しておくため。
```javascript
var paths = {
assets: [
"public/css/**/*.css",
"public/js/**/*.js",
"public/img/**/*.svg"
]
};
gulp.task('checksum', function() {
var result = {};
for (var i = 0; i < paths.assets.length; i++) {
var files = glob.sync(paths.assets[i]);
for (var j = 0; j < files.length; j++) {
var file = files[j];
if (fs.statSync(file).isFile()) {
var data = fs.readFileSync(file);
var hash = crypto.createHash('md5');
hash.update(data.toString(), 'utf8');
result[path.basename(file)] = hash.digest('hex');
}
}
}
fs.writeFileSync(
'lib/asset-hash.json',
JSON.stringify(result, null, 2)
);
});
```
他のプロジェクトでも使いまわしたいので、gulp.jsのプラグインにしようと思う。ただ作ったことがないので、調べながらだ。npmの公開とかしたことがないのでな。アカウント作るところからだ。
こんなgulp.jsのタスクを書いた。用途としてはassetファイルのcache bustering用にファイルのハッシュ値を保存しておくため。
var paths = {
assets: [
"public/css/**/*.css",
"public/js/**/*.js",
"public/img/**/*.svg"
]
};
gulp.task('checksum', function() {
var result = {};
for (var i = 0; i < paths.assets.length; i++) {
var files = glob.sync(paths.assets[i]);
for (var j = 0; j < files.length; j++) {
var file = files[j];
if (fs.statSync(file).isFile()) {
var data = fs.readFileSync(file);
var hash = crypto.createHash('md5');
hash.update(data.toString(), 'utf8');
result[path.basename(file)] = hash.digest('hex');
}
}
}
fs.writeFileSync(
'lib/asset-hash.json',
JSON.stringify(result, null, 2)
);
});
他のプロジェクトでも使いまわしたいので、gulp.jsのプラグインにしようと思う。ただ作ったことがないので、調べながらだ。npmの公開とかしたことがないのでな。アカウント作るところからだ。