Как организовать простую панель управления на React?
Здравствуйте!
Есть web приложение с личным кабинетом.
Когда пользователь не авторизован, ему показывается главная и статические страницы, когда он авторизован, он попадает в панель управления и там уже может перемещаться по всем страницам.
Я не использую redux, потому что приложение не большое и вся регистрация сделана через firebase, но столкнулся с проблемой: у меня шапка и футер идут в одельных глупых компонентах.
В них нужно выводить либо информацию о текущем пользователе, либо кнопки входа/регистрации.
Я вижу 2 варианта:
1. Делать Header стостояние, и кидать снова запрос на onAuthStateChanged - что не круто, т.к. плодить лишние запросы к БД не хочется
2. Передавать на каждой странице в Header все необходимые данные, что тоже не круто, т.к. если что то изменится, придется на всех страницах менять
Сделайте просто отдельный объект где будет логика авторизации и текущее состояние, его импортируйте во всех компонентах где надо и используйте.
Хоть класс, хоть модуль, как угодно.
Используйте state management библиотеку(Redux, MobX, etc) Их для решения подобных проблем и написали.
Еще как вариант прокинуть данные пользователя в контекст. Но лучше прикрутить state management библиотеку.