fix aside expanded when load page

This commit is contained in:
Dede Fuji Abdul
2023-10-19 10:11:59 +07:00
parent 2e4efd74fa
commit 678f25f3a9
5 changed files with 38 additions and 5 deletions

View File

@ -1,6 +1,6 @@
<script setup lang="ts">
import { watch } from 'vue'
import { useRoute, RouterLink } from 'vue-router'
import { onMounted, watch } from 'vue'
import { useRoute, RouterLink, useRouter } from 'vue-router'
import {
Dialog,
DialogPanel,
@ -13,15 +13,31 @@ import { IconApp } from '@/utils/icons'
import AsideMenuSingle from '@/components/Navigation/Aside/AsideMenuSingle.vue'
import AsideMenuMultiple from '@/components/Navigation/Aside/AsideMenuMultiple.vue'
import { Bars3BottomLeftIcon } from '@heroicons/vue/20/solid'
import { splitRoutePath } from '@/utils/texts'
const menu = useMenuStore()
const route = useRoute()
const router = useRouter()
watch(route, (to, _) => {
menu.menuSelected = to.fullPath
console.log('path', menu.menuSelected);
closeSideBar()
})
onMounted(() => {
menu.menuSelected = router.currentRoute.value.fullPath
if (menu.menuSelected !== '/' && menu.menuSelected !== '/home' && menu.menuSelected.includes('/home')) {
const result = splitRoutePath(menu.menuSelected)
for (const route of result) {
if (route !== '/home') {
menu.toggleSidebarMenu(route, true)
}
}
}
})
const isMenu = (name: string) => {
return menu.menuSelected === name
}
@ -115,3 +131,4 @@ const closeSideBar = () => menu.toggleSidebar()
</div>
</template>
@/utils/text@/utils/texts

View File

@ -1,5 +1,5 @@
<script setup lang="ts">
import { computed, defineProps } from 'vue'
import { computed, defineProps, onMounted } from 'vue'
import type { MenuItemModel } from '@/utils/interfaces'
import { Disclosure, DisclosureButton, DisclosurePanel } from '@headlessui/vue'
import { useMenuStore } from '@/stores/menu'