UNPKG

jd-tiny

Version:

可对一整个项目进行打包,自动处理文件间与图片的依赖关系,并能实现图片压缩、上传、线上链接替换等

38 lines (34 loc) 1.24 kB
function FilesListPlugin(options) { this.options = options; } FilesListPlugin.prototype.apply = function(compiler) { compiler.plugin('emit', function(compilation, callback) { var fileslist = [], fileDependencies = compilation.fileDependencies; for (var filename in compilation.assets) { if (filename.indexOf('cacheImg/')===0) { for (var i = 0; i < fileDependencies.length; i++) { if (new RegExp(filename.slice(25)).test(fileDependencies[i])) { fileslist.push({ imgName: filename.slice(25), hash: filename.slice(9, 24), hashName: filename.slice(9) }); fileDependencies.splice(i,1); break; } } } } compilation.assets['fileslist.md'] = { source: function() { return JSON.stringify(fileslist, null, 4); }, size: function() { return fileslist.length; } }; callback(); }); }; module.exports = FilesListPlugin;