fix: フォルダーのページネーションが機能しない (#11187)
* fix: フォルダーのページネーションが機能しない close #11180 * Update MkDrive.vue --------- Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
This commit is contained in:
parent
e40a0b98e4
commit
36d5deeb61
2 changed files with 24 additions and 1 deletions
|
@ -29,6 +29,7 @@
|
||||||
- Fix: sparkle内にリンクを入れるとクリック不能になる問題の修正
|
- Fix: sparkle内にリンクを入れるとクリック不能になる問題の修正
|
||||||
- Fix: ZenUIでポップアップの表示位置がおかしい問題を修正
|
- Fix: ZenUIでポップアップの表示位置がおかしい問題を修正
|
||||||
- Fix: ページ遷移でスクロール位置が保持されない問題を修正
|
- Fix: ページ遷移でスクロール位置が保持されない問題を修正
|
||||||
|
- Fix: フォルダーのページネーションが機能しない #11180
|
||||||
|
|
||||||
### Server
|
### Server
|
||||||
- JSON.parse の回数を削減することで、ストリーミングのパフォーマンスを向上しました
|
- JSON.parse の回数を削減することで、ストリーミングのパフォーマンスを向上しました
|
||||||
|
|
|
@ -56,7 +56,7 @@
|
||||||
/>
|
/>
|
||||||
<!-- SEE: https://stackoverflow.com/questions/18744164/flex-box-align-last-row-to-grid -->
|
<!-- 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>
|
<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>
|
||||||
<div v-show="files.length > 0" ref="filesContainer" :class="$style.files">
|
<div v-show="files.length > 0" ref="filesContainer" :class="$style.files">
|
||||||
<XFile
|
<XFile
|
||||||
|
@ -560,6 +560,28 @@ async function fetch() {
|
||||||
fetching.value = false;
|
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() {
|
function fetchMoreFiles() {
|
||||||
fetching.value = true;
|
fetching.value = true;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue