Я создаю приложение vue js.У меня есть экран входа в систему и после входа в систему, левая боковая панель для параметров, таких как панель инструментов, пользователи, настройки ... и заголовок для функции выхода из системы и уведомления.
Моя архитектура: у меня есть 1 общий файл (основной макет), в котором заголовоки боковая панель добавляются.Теперь при первом открытии после входа в систему вызывается информационная панель, в которую импортируется основной макет.
Я хочу вызывать эту боковую панель и заголовок только один раз ... но проблема в том, что когда я нажимаю на боковую панель, она открывает соответствующий экран.в правой части контейнера, но боковая панель и заголовок также вызывает, поскольку я импортировал основной файл в каждый компонент.
Из-за этого мой прослушиватель Firebase подключен к заголовкам несколько раз.Я хочу загрузить заголовок только один раз после входа в систему, чтобы я мог правильно использовать firebase listener.Моя архитектура ниже:
основной файл макета:
<template>
<div id="appOne">
<div class="col-sm-3 col-lg-2 hamburger" style="padding-left: 0;">
<Sidebar></Sidebar>
</div>
<div class="col-sm-9 col-lg-10 fixed">
<Header class="header"></Header>
<div class="dynTemplate" id="dynTemplate"></div>
</div>
</div>
</template>
Файл панели мониторинга:
<template>
<div>
<Mainlayout></Mainlayout>
<div>
<span><h1 align="center"> Welcome </h1> </span>
</div>
</div>
</template>
<script>
import Mainlayout from './shared/Mainlayout.vue';
export default {
el: '#appOne',
components: {
Mainlayout,
}
}
</script>
Как правильно использовать заголовок, боковую панель и другие компоненты, которыебудет вызывать при нажатии на опции боковой панели.