diff --git a/src/components/ShowFile/ShowFile.vue b/src/components/ShowFile/ShowFile.vue index 7b7e20c..37af97f 100644 --- a/src/components/ShowFile/ShowFile.vue +++ b/src/components/ShowFile/ShowFile.vue @@ -21,7 +21,7 @@ @@ -91,7 +91,7 @@ 0){ - const percentage = Number((space/quota * 100).toFixed(5)) + const spaceBytes = this.takeUpSpace + const quotaBytes = this.userInfo.quota * 1024 * 1024 * 1024 + if(spaceBytes && quotaBytes > 0){ + const percentage = Number((spaceBytes/quotaBytes * 100).toFixed(5)) this.percentage = percentage > 100 ? 100 : percentage if(this.isCollapse){ return `${formatSize(this.takeUpSpace)}` } else { - return `${formatSize(this.takeUpSpace)}/${quota}GB` + return `${formatSize(this.takeUpSpace)}/${formatSize(quotaBytes)}` } } } diff --git a/src/utils/number.js b/src/utils/number.js index 30af345..56660a4 100644 --- a/src/utils/number.js +++ b/src/utils/number.js @@ -127,17 +127,18 @@ export function formatTime(agoTime) { * @param {*} size */ export function formatSize(size) { - if (size === 0) { - return '' - } else if (size < 1024) { - return size + 'B' - } else if (size < 1024 * 1024) { - return (size/1024).toFixed(1) + 'k' - } else if (size < 1024 * 1024 * 1024) { - return (size/(1024 * 1024)).toFixed(1) + 'M' - } else { - return (size/(1024 * 1024 * 1024)).toFixed(1) + 'G' + if (size === 0 || !size) return '0B'; + + const units = ['B', 'K', 'M', 'G', 'T']; + let index = 0; + let result = size; + + while (result >= 1024 && index < units.length - 1) { + result /= 1024; + index++; } + + return result.toFixed(1) + units[index]; } /** diff --git a/src/views/favorite/index.vue b/src/views/favorite/index.vue index 3c64562..0a4738f 100644 --- a/src/views/favorite/index.vue +++ b/src/views/favorite/index.vue @@ -9,7 +9,6 @@ :defaultSort="sortable" :queryCondition="queryCondition" :contextMenus="contextMenus" - homeHidden > @@ -39,7 +38,7 @@ }, { label: '刷新', operation: 'refresh'}, { divider: true, operation: 'divider' }, - { label: '新建', operation: 'create' , homeDisable: true, child: createFiles + { label: '新建', operation: 'create' , child: createFiles }, { divider: true, operation: 'divider' }, { label: '写文章', operation: 'createMarkdownFile'}, diff --git a/src/views/fileType/audio.vue b/src/views/fileType/audio.vue index 5846a05..7149375 100644 --- a/src/views/fileType/audio.vue +++ b/src/views/fileType/audio.vue @@ -39,7 +39,7 @@ export default { }, { label: '刷新', operation: 'refresh'}, { divider: true, operation: 'divider' }, - { label: '新建', operation: 'create' , homeDisable: true, child: createFiles + { label: '新建', operation: 'create' , child: createFiles }, { divider: true, operation: 'divider' }, { label: '写文章', operation: 'createMarkdownFile'}, diff --git a/src/views/fileType/document.vue b/src/views/fileType/document.vue index 3f0be3f..67a2b63 100644 --- a/src/views/fileType/document.vue +++ b/src/views/fileType/document.vue @@ -39,7 +39,7 @@ export default { }, { label: '刷新', operation: 'refresh'}, { divider: true, operation: 'divider' }, - { label: '新建', operation: 'create' , homeDisable: true, child: createFiles + { label: '新建', operation: 'create' , child: createFiles }, { divider: true, operation: 'divider' }, { label: '写文章', operation: 'createMarkdownFile'}, diff --git a/src/views/fileType/image.vue b/src/views/fileType/image.vue index dd08c15..39f9573 100644 --- a/src/views/fileType/image.vue +++ b/src/views/fileType/image.vue @@ -38,7 +38,7 @@ export default { }, { label: '刷新', operation: 'refresh'}, { divider: true, operation: 'divider' }, - { label: '新建', operation: 'create' , homeDisable: true, child: createFiles + { label: '新建', operation: 'create' , child: createFiles }, { divider: true, operation: 'divider' }, { label: '写文章', operation: 'createMarkdownFile'}, diff --git a/src/views/fileType/video.vue b/src/views/fileType/video.vue index f5db228..23eddab 100644 --- a/src/views/fileType/video.vue +++ b/src/views/fileType/video.vue @@ -39,7 +39,7 @@ export default { }, { label: '刷新', operation: 'refresh'}, { divider: true, operation: 'divider' }, - { label: '新建', operation: 'create' , homeDisable: true, child: createFiles + { label: '新建', operation: 'create' , child: createFiles }, { divider: true, operation: 'divider' }, { label: '写文章', operation: 'createMarkdownFile'}, diff --git a/src/views/mount/index.vue b/src/views/mount/index.vue index e324a39..91e0eb5 100644 --- a/src/views/mount/index.vue +++ b/src/views/mount/index.vue @@ -9,7 +9,6 @@ :defaultSort="sortable" :queryCondition="queryCondition" :contextMenus="contextMenus" - homeHidden > @@ -39,7 +38,7 @@ }, { label: '刷新', operation: 'refresh'}, { divider: true, operation: 'divider' }, - { label: '新建', operation: 'create' , homeDisable: true, child: createFiles + { label: '新建', operation: 'create' , child: createFiles }, { divider: true, operation: 'divider' }, { label: '写文章', operation: 'createMarkdownFile'}, diff --git a/src/views/recently/index.vue b/src/views/recently/index.vue index 9ccc69a..951d11a 100644 --- a/src/views/recently/index.vue +++ b/src/views/recently/index.vue @@ -37,7 +37,7 @@ }, { label: '刷新', operation: 'refresh'}, { divider: true, operation: 'divider' }, - { label: '新建', operation: 'create' , homeDisable: true, child: createFiles}, + { label: '新建', operation: 'create' , child: createFiles}, { divider: true, operation: 'divider' }, { label: '写文章', operation: 'createMarkdownFile'}, ] diff --git a/src/views/setting/sys/cusomerInfo.vue b/src/views/setting/sys/cusomerInfo.vue index 488a081..87c4335 100644 --- a/src/views/setting/sys/cusomerInfo.vue +++ b/src/views/setting/sys/cusomerInfo.vue @@ -241,12 +241,13 @@ } }, progressFormat() { - const space = this.userInfo.takeUpSpace/1024/1024/1024 - const quota = this.userInfo.quota - if(space && quota > 0){ - const percentage = Number((space/quota * 100).toFixed(1)) - this.percentage = percentage > 100 ? 100 : percentage - return `${this.percentage}% (${formatSize(this.userInfo.takeUpSpace)}/${quota}GB)`; + const spaceBytes = this.userInfo.takeUpSpace; + const quotaBytes = this.userInfo.quota * 1024 * 1024 * 1024; + + if (spaceBytes && quotaBytes > 0) { + const percentage = Number((spaceBytes / quotaBytes * 100).toFixed(1)); + this.percentage = percentage > 100 ? 100 : percentage; + return `${this.percentage}% (${formatSize(spaceBytes)}/${formatSize(quotaBytes)})`; } }, // 设置formData diff --git a/src/views/tag/index.vue b/src/views/tag/index.vue index 515e73c..fca535e 100644 --- a/src/views/tag/index.vue +++ b/src/views/tag/index.vue @@ -8,7 +8,6 @@ :defaultSort="sortable" :queryCondition="queryCondition" :contextMenus="contextMenus" - homeHidden > @@ -38,7 +37,7 @@ export default { }, { label: '刷新', operation: 'refresh'}, { divider: true, operation: 'divider' }, - { label: '新建', operation: 'create' , homeDisable: true, child: createFiles + { label: '新建', operation: 'create' , child: createFiles }, { divider: true, operation: 'divider' }, { label: '写文章', operation: 'createMarkdownFile'},