diff --git a/changes/changelog.d/1927.bugfix b/changes/changelog.d/1927.bugfix new file mode 100644 index 000000000..de8c90e41 --- /dev/null +++ b/changes/changelog.d/1927.bugfix @@ -0,0 +1 @@ +Fix fetching pages of albums in album detail view (#1927) diff --git a/front/src/components/audio/track/Table.vue b/front/src/components/audio/track/Table.vue index f9faaba8b..071b44e93 100644 --- a/front/src/components/audio/track/Table.vue +++ b/front/src/components/audio/track/Table.vue @@ -138,7 +138,7 @@ if (props.tracks === undefined) { } const updatePage = (page: number) => { - if (props.tracks.length === 0) { + if (props.tracks === undefined) { currentPage.value = page fetchData() } else { @@ -234,7 +234,7 @@ const updatePage = (page: number) => { { > @@ -296,7 +296,7 @@ const updatePage = (page: number) => { v-if="paginateResults && totalTracks > paginateBy" :paginate-by="paginateBy" :total="totalTracks" - :current="tracks.length > 0 ? page : currentPage" + :current="tracks !== undefined ? page : currentPage" :compact="true" @update:current="updatePage" /> diff --git a/front/src/components/library/AlbumDetail.vue b/front/src/components/library/AlbumDetail.vue index 7f579317b..f38068af5 100644 --- a/front/src/components/library/AlbumDetail.vue +++ b/front/src/components/library/AlbumDetail.vue @@ -5,6 +5,7 @@ import LibraryWidget from '~/components/federation/LibraryWidget.vue' import ChannelEntries from '~/components/audio/ChannelEntries.vue' import TrackTable from '~/components/audio/track/Table.vue' import PlayButton from '~/components/audio/PlayButton.vue' +import Pagination from '~/components/vui/Pagination.vue' interface Events { (e: 'page-changed', page: number): void @@ -75,11 +76,19 @@ const getDiscKey = (disc: Track[]) => disc.map(track => track.id).join('|') :show-art="false" :show-album="false" :show-artist="false" - :paginate-results="true" - :total="totalTracks" + :paginate-results="false" + /> + +
+
@@ -95,7 +104,7 @@ const getDiscKey = (disc: Track[]) => disc.map(track => track.id).join('|') :total="totalTracks" :paginate-by="paginateBy" :page="page" - @page-changed="emit('page-changed', page)" + @page-changed="(page) => emit('page-changed', page)" />