This commit is contained in:
RenCheng 2025-05-24 21:58:05 +08:00
parent 1b34272383
commit 8ef96d5004
2 changed files with 16 additions and 2 deletions

View File

@ -25,7 +25,7 @@
:pagination="pagination" :scroll="{ y: 'calc(100vh - 420px)' }" rowKey="id"
@change="handleTableChange">
<span slot="action" slot-scope="text, record">
<a @click="download(record,$event)">下载</a>&nbsp; <a @click="viewFile(record,$event)">预览</a>
<a @click="download(record,$event)">下载</a>&nbsp; <a v-if="isPreviewable(record.fileName)" @click="viewFile(record,$event)">预览</a>
</span>
</a-table>
</div>
@ -120,6 +120,7 @@ export default {
showTotal: total => `总共 ${total} 个项目`, //
onShowSizeChange: (current, pageSize) => (this.pageSize = pageSize)
},
viewFileType:["png","bmp","jpg","jpeg","mp4","avi","mp3","pdf"]
}
},
created() {
@ -131,6 +132,12 @@ export default {
},
methods: {
isPreviewable(fileName){
const parts = fileName.split('.');
if (parts.length < 2) return false; //
const extension = parts.pop().toLowerCase();
return this.viewFileType.includes(extension);
},
handleTableChange(pagination, filters, sorter) {
this.pagination = pagination
this.searchFile.pageNum = pagination.current

View File

@ -132,7 +132,7 @@
@change="handleTableChange"
>
<span slot="action" slot-scope="text, record">
<a @click="download(record, $event)">下载</a>&nbsp; <a @click="viewFile(record, $event)">预览</a>&nbsp;
<a @click="download(record, $event)">下载</a>&nbsp; <a v-if="isPreviewable(record.fileName)" @click="viewFile(record, $event)">预览</a>&nbsp;
<a @click="DeleteFile(record, $event)">删除</a>
</span>
</a-table>
@ -233,6 +233,7 @@ export default {
audio: 0,
total: 0,
},
viewFileType:["png","bmp","jpg","jpeg","mp4","avi","mp3","pdf"]
}
},
created() {},
@ -243,6 +244,12 @@ export default {
},
computed: {},
methods: {
isPreviewable(fileName){
const parts = fileName.split('.');
if (parts.length < 2) return false; //
const extension = parts.pop().toLowerCase();
return this.viewFileType.includes(extension);
},
calculateScrollY() {
//
const container = this.$refs.tableContainer;