From 159f67616471b987a59ad14b5d72efe3aff939d1 Mon Sep 17 00:00:00 2001 From: Daniel Tomlinson Date: Thu, 18 Mar 2021 03:38:20 +0000 Subject: [PATCH] adding latest working query param parsing --- src/router/index.js | 1 + src/views/DeckBuilder.vue | 52 ++++++++++++++++++++++----------------- 2 files changed, 31 insertions(+), 22 deletions(-) diff --git a/src/router/index.js b/src/router/index.js index 9a55576..98825e8 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -30,6 +30,7 @@ const routes = [ ]; const router = new VueRouter({ + mode: 'history', routes, }); diff --git a/src/views/DeckBuilder.vue b/src/views/DeckBuilder.vue index 493ace4..a50bcb0 100644 --- a/src/views/DeckBuilder.vue +++ b/src/views/DeckBuilder.vue @@ -60,8 +60,7 @@ - url: {{ construct_url() }} - + @@ -216,29 +215,38 @@ export default { }, computed: {}, mounted() { - // console.log(JSON.stringify(this.selected_shikigami_decks)); - // var encoded = btoa(JSON.stringify(this.selected_shikigami_decks)); - // console.log(encoded); - // console.log(atob(encoded)); - // console.log(this.$route.query.selected_shikigami_data); - // console.log(atob(this.$route.query.selected_shikigami_data)) + if (this.$route.query.selected_shikigami_names) { + const saved_selected_shikigami_names = JSON.parse( + atob(this.$route.query.selected_shikigami_names) + ); - // TODO: check the query param exists first before calling atob - const saved_selected_shikigami_names = JSON.parse( - atob(this.$route.query.selected_shikigami_names) - ); - console.log(saved_selected_shikigami_names); - for (let i = 0; i < saved_selected_shikigami_names.length; i++) { - this.selected_shikigami_names.push(saved_selected_shikigami_names[i]); + if (typeof saved_selected_shikigami_names != "object") { + this.selected_shikigami_names = []; + } else { + this.selected_shikigami_names = []; + for (let i = 0; i < saved_selected_shikigami_names.length; i++) { + this.selected_shikigami_names.push(saved_selected_shikigami_names[i]); + } + } + } else { + this.selected_shikigami_names = []; } - const saved_selected_shikigami_decks = JSON.parse( - atob(this.$route.query.selected_shikigami_decks) - ); - console.log(saved_selected_shikigami_decks); - this.selected_shikigami_decks = []; - for (let i = 0; i < saved_selected_shikigami_decks.length; i++) { - this.selected_shikigami_decks.push(saved_selected_shikigami_decks[i]); + if (this.$route.query.selected_shikigami_decks) { + const saved_selected_shikigami_decks = JSON.parse( + atob(this.$route.query.selected_shikigami_decks) + ); + + if (typeof saved_selected_shikigami_decks != "object") { + this.selected_shikigami_decks = []; + } else { + this.selected_shikigami_decks = []; + for (let i = 0; i < saved_selected_shikigami_decks.length; i++) { + this.selected_shikigami_decks.push(saved_selected_shikigami_decks[i]); + } + } + } else { + this.selected_shikigami_decks = []; } }, watch: {