| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- function fileList(list) {
- if (!Array.isArray(list) || list.length === 0) return [];
- const suffixList = {
- image: ['png', 'jpg', 'jpeg', 'bmp', 'gif', 'webp', 'svg', 'tiff'],
- video: ['mp4', 'ogg', 'webm'],
- word: ['doc', 'docx'],
- excel: ['xls', 'xlsx'],
- ppt: ['ppt', 'pptx'],
- txt: ['txt', 'md', 'js', 'json'],
- pdf: ['pdf'],
- rar: ['7z', 'zip', 'rar', 'kz', 'ace', 'arj', 'bz2', 'cab', 'gz', 'iso', 'jar', 'lzh', 'tar', 'z'],
- folder: ['folder']
- };
- return list.map(file => {
- const suffix = file.postfix ? file.postfix.toLowerCase() : '';
- const fileType = suffixList.folder.includes(suffix) ? 'folder' :
- Object.keys(suffixList).find(key => suffixList[key].includes(suffix)) || 'unknown';
- return {
- ...file,
- fileType,
- cover: fileType === 'image' ? file.url :
- fileType !== 'unknown' ? `/static/image/file/${fileType}.png` :
- `/static/image/file/unknown.png`
- };
- });
- }
- //得到缩略图或者压缩图 getType默认得到缩略图传true得到压缩图
- function getSpecifiedImage(obj, getType = false) {
- if (!obj || !Array.isArray(obj.subfiles)) return "";
- const type = getType ? 'compressed' : 'thumbnail';
- const imgObj = obj.subfiles.find(v => v.type === type);
- return imgObj ? imgObj.url : "";
- }
- module.exports = {
- fileList,
- getSpecifiedImage
- }
|