diff options
| author | yupix <yupi0982@outlook.jp> | 2023-07-08 17:48:10 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-07-08 17:48:10 +0900 |
| commit | 36d5deeb611153ba3624384b6aca947784cc1e64 (patch) | |
| tree | ab707382c0e8a4a2182365f96930d9e0f6749fec /packages | |
| parent | fix(frontend): search user with trailing space (#11184) (diff) | |
| download | misskey-36d5deeb611153ba3624384b6aca947784cc1e64.tar.gz misskey-36d5deeb611153ba3624384b6aca947784cc1e64.tar.bz2 misskey-36d5deeb611153ba3624384b6aca947784cc1e64.zip | |
fix: フォルダーのページネーションが機能しない (#11187)
* fix: フォルダーのページネーションが機能しない close #11180
* Update MkDrive.vue
---------
Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
Diffstat (limited to 'packages')
| -rw-r--r-- | packages/frontend/src/components/MkDrive.vue | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/packages/frontend/src/components/MkDrive.vue b/packages/frontend/src/components/MkDrive.vue index 917e785139..201a6ccdc8 100644 --- a/packages/frontend/src/components/MkDrive.vue +++ b/packages/frontend/src/components/MkDrive.vue @@ -56,7 +56,7 @@ /> <!-- SEE: https://stackoverflow.com/questions/18744164/flex-box-align-last-row-to-grid --> <div v-for="(n, i) in 16" :key="i" :class="$style.padding"></div> - <MkButton v-if="moreFolders" ref="moreFolders">{{ i18n.ts.loadMore }}</MkButton> + <MkButton v-if="moreFolders" ref="moreFolders" @click="fetchMoreFolders">{{ i18n.ts.loadMore }}</MkButton> </div> <div v-show="files.length > 0" ref="filesContainer" :class="$style.files"> <XFile @@ -560,6 +560,28 @@ async function fetch() { fetching.value = false; } +function fetchMoreFolders() { + fetching.value = true; + + const max = 30; + + os.api('drive/folders', { + folderId: folder.value ? folder.value.id : null, + type: props.type, + untilId: folders.value[folders.value.length - 1].id, + limit: max + 1, + }).then(folders => { + if (folders.length === max + 1) { + moreFolders.value = true; + folders.pop(); + } else { + moreFolders.value = false; + } + for (const x of folders) appendFolder(x); + fetching.value = false; + }); +} + function fetchMoreFiles() { fetching.value = true; |