|
|
@@ -83,18 +83,21 @@ const { buildMenu, hasMenu, isInternalLink, openMenu, isMenuOpened } = useMenu()
|
|
|
const { mdAndUp } = useDisplay()
|
|
|
|
|
|
const menu = buildMenu('Main')
|
|
|
+if (menu.value === null) {
|
|
|
+ throw new Error('No main menu to display')
|
|
|
+}
|
|
|
|
|
|
const hasMainMenu = computed(() => hasMenu('Main'))
|
|
|
|
|
|
const isOpened = computed(() => isMenuOpened('Main'))
|
|
|
|
|
|
// En vue md+, on affiche toujours le menu
|
|
|
-const isRail = computed(() => mdAndUp.value && !isOpened.value)
|
|
|
-const displayMenu = computed(() => hasMainMenu && (mdAndUp.value || isOpened.value))
|
|
|
+const isRail = computed(() => menu.value !== null && mdAndUp.value && !isOpened.value)
|
|
|
+const displayMenu = computed(() => menu.value !== null && hasMainMenu && (mdAndUp.value || isOpened.value))
|
|
|
|
|
|
const unwatch = watch(mdAndUp, (newValue, oldValue) => {
|
|
|
// Par défaut si l'écran est trop petit au chargement de la page, le menu doit rester fermé.
|
|
|
- if (process.client && mdAndUp.value) {
|
|
|
+ if (process.client && menu.value !== null && mdAndUp.value) {
|
|
|
openMenu('Main')
|
|
|
}
|
|
|
})
|