Всем привет. Начал изучать Vue, до этого имел опыт с React.
Нужно сделать такой функционал: есть два изначально скрытых компонента. Отображаются данные компоненты по клику на клавиши 1 и 2 соответственно. Все эти два компонента лежат в родительском компоненте App.
Отображать данные компоненты на клику на клавиши не сложно, но. Нужно сделать так, что бы когда активен один элемент, нельзя было вызвать другой.
Например:
Нажата клавиша 1 -> появился компонент 1
Нажата клавиша 2 -> ничего не произошло
Нажата клавиша 1 -> компонент 1 пропал
Нажата клавиша 2 -> появился 2 компонент.
Тем самым, нужно сделать что бы всегда был активен один компонент из всех.
Вопрос, как лучше подойти к реализации подобного функционала?
Применять Vuex или как-то отображать элементы с помощью пропсов?
Не совсем стандартный функционал, поэтому даже не знаю как его реализовать...
Заранее спасибо, за удаленное время)
p.s Использую Vue3
Слышал про EventBus, но он похоже не работает в Vue 3.
Вам не нужен ни менеджер состояний ни шина событий. Ничего. Просто в родителе, создаёте переключатель. И по переключателю родитель отображает то один то другой дочерний компонент. Вот и всё.