From 6e0d291733b36568ea08658d1f87457363b5da45 Mon Sep 17 00:00:00 2001 From: Ashley Sommer Date: Mon, 24 Jun 2024 19:07:39 +1000 Subject: [PATCH] Reorder declaration of props, to _before_ it is read. Fixes error "can't access lexical declaration 'props' before initialization" --- src/components/navs/MainNav.vue | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/components/navs/MainNav.vue b/src/components/navs/MainNav.vue index 45f8bdc..4c77936 100644 --- a/src/components/navs/MainNav.vue +++ b/src/components/navs/MainNav.vue @@ -71,6 +71,12 @@ const activePrez = computed(() => { return enabledPrezs.value.find(prez => route.path === `/${prez.toLowerCase()[0]}` || route.path.startsWith(`/${prez.toLowerCase()[0]}/`)); }); + +const props = defineProps<{ + sidenav: boolean; + version: string; +}>(); + const collapse = ref(false); const dropdowns = ref(enabledPrezs.value.reduce<{[key: string]: boolean}>((obj, prez) => (obj[prez] = props.sidenav ? prez === activePrez.value : false, obj), {})); // { CatPrez: false, ... } @@ -80,11 +86,6 @@ watch(() => route.path, (newValue) => { } }); -const props = defineProps<{ - sidenav: boolean; - version: string; -}>(); - function closeDropdowns() { if (!Object.values(dropdowns.value).every(isOpen => !isOpen)) { // if any are true Object.keys(dropdowns.value).forEach(prez => dropdowns.value[prez] = false); // set all to false