@@ -2,6 +2,7 @@ import { defineStore } from 'pinia'
2
2
3
3
// @ts -ignore
4
4
import common from "~/common" ;
5
+ import useStorageConfigStore from "./storage-config" ;
5
6
6
7
// 当前存储源的配置信息,数据来源为服务端配置。请求存储源后会获取其配置信息。
7
8
const useFileDataStore = defineStore ( 'fileDataStore' , {
@@ -21,6 +22,7 @@ const useFileDataStore = defineStore('fileDataStore', {
21
22
oldStorageKey : null ,
22
23
searchParam : '' ,
23
24
fileListSource : [ ] ,
25
+ loadFileSize : - 1 ,
24
26
audioArray : [ ] ,
25
27
audioIndex : 0 ,
26
28
}
@@ -39,15 +41,19 @@ const useFileDataStore = defineStore('fileDataStore', {
39
41
} ;
40
42
} ,
41
43
fileList : state => {
42
- let tableData = state . fileListSource ;
44
+ if ( state . loadFileSize === - 1 ) return [ ] ;
45
+ let firstIsBack = state . fileListSource [ 0 ] ?. type === 'BACK' ;
46
+ let toSize = firstIsBack ? state . loadFileSize + 1 : state . loadFileSize ;
47
+ toSize = toSize > state . fileListSource . length ? state . fileListSource . length : toSize ;
48
+ let tableData = state . fileListSource . slice ( 0 , toSize ) ;
43
49
tableData . forEach ( ( item :any ) => {
44
50
// 生成图标
45
51
if ( ! item . icon ) {
46
52
item [ 'icon' ] = common . getFileIconName ( item ) ;
47
53
}
48
54
if ( item . preview !== null ) {
49
55
// 获取文件类型
50
- var fileType = common . getFileType ( item . name ) ;
56
+ let fileType = common . getFileType ( item . name ) ;
51
57
if ( fileType ) {
52
58
// 获取文件是否可预览
53
59
item [ 'fileType' ] = fileType ;
@@ -59,6 +65,15 @@ const useFileDataStore = defineStore('fileDataStore', {
59
65
} ) ;
60
66
return tableData ;
61
67
} ,
68
+ getFileUrlByName : state => {
69
+ return ( name : string ) => {
70
+ let item = state . fileListSource . find ( ( item :any ) => item . name === name ) ;
71
+ if ( item ) {
72
+ return item . url ;
73
+ }
74
+ return '' ;
75
+ } ;
76
+ }
62
77
} ,
63
78
actions : {
64
79
updateCurrentStorageSource ( val : any ) {
@@ -78,10 +93,14 @@ const useFileDataStore = defineStore('fileDataStore', {
78
93
} ,
79
94
updateFileList ( val : any ) {
80
95
this . fileListSource = val ;
96
+ this . loadFileSize = useStorageConfigStore ( ) . globalConfig . maxShowSize ;
81
97
} ,
82
98
updateOldStorageKey ( val : any ) {
83
99
this . oldStorageKey = val ;
84
100
} ,
101
+ updateLoadFileSize ( val : number ) {
102
+ this . loadFileSize = val ;
103
+ }
85
104
} ,
86
105
} )
87
106
0 commit comments