diff --git a/src/views/album.vue b/src/views/album.vue index f90fa19f5a..a8350dfd80 100644 --- a/src/views/album.vue +++ b/src/views/album.vue @@ -71,12 +71,12 @@ -
-
-

Disc {{ cd }}

+
+
+

Disc {{ item.disc }}

@@ -153,7 +153,7 @@ import locale from '@/locale'; import { splitSoundtrackAlbumTitle, splitAlbumTitle } from '@/utils/common'; import NProgress from 'nprogress'; import { isAccountLoggedIn } from '@/utils/auth'; -import { groupBy } from 'lodash'; +import { groupBy, toPairs, sortBy } from 'lodash'; import ExplicitSymbol from '@/components/ExplicitSymbol.vue'; import ButtonTwoTone from '@/components/ButtonTwoTone.vue'; @@ -222,7 +222,12 @@ export default { } }, tracksByDisc() { - return groupBy(this.tracks, 'cd'); + if (this.tracks.length <= 1) return []; + const pairs = toPairs(groupBy(this.tracks, 'cd')); + return sortBy(pairs, p => p[0]).map(items => ({ + disc: items[0], + tracks: items[1], + })); }, }, created() {