diff --git a/web-src/src/pages/PageGenreAlbums.vue b/web-src/src/pages/PageGenreAlbums.vue index 0c512439..d97de1b1 100644 --- a/web-src/src/pages/PageGenreAlbums.vue +++ b/web-src/src/pages/PageGenreAlbums.vue @@ -96,14 +96,10 @@ export default { return { genre: {}, albums_list: new GroupByList(), + media_kind: this.$route.query.media_kind, show_genre_details_modal: false } }, - computed: { - media_kind() { - return this.$route.query.media_kind - } - }, methods: { open_tracks() { this.show_details_modal = false diff --git a/web-src/src/pages/PageGenreTracks.vue b/web-src/src/pages/PageGenreTracks.vue index 4766c0b1..fecb037a 100644 --- a/web-src/src/pages/PageGenreTracks.vue +++ b/web-src/src/pages/PageGenreTracks.vue @@ -94,6 +94,10 @@ export default { }) }, beforeRouteUpdate(to, from, next) { + if (!this.tracks_list.isEmpty()) { + next() + return + } const vm = this dataObject.load(to).then((response) => { dataObject.set(vm, response) @@ -118,6 +122,7 @@ export default { }) } ], + media_kind: this.$route.query.media_kind, show_genre_details_modal: false, tracks_list: new GroupByList() } @@ -127,9 +132,6 @@ export default { expression() { return `genre is "${this.genre.name}" and media_kind is ${this.media_kind}` }, - media_kind() { - return this.$route.query.media_kind - }, selected_groupby_option_id: { get() { return this.$store.state.genre_tracks_sort