Задать вопрос
Nik_o_lay
@Nik_o_lay
Изучаю фронтенд

Как избавиться от излишних рендеров?

У меня есть два меню. Каждое выделяет свой активный пункт. Определяется он при помощи withRouter. НО при переходах в одном меню, перерендер происходит и в другом, что как мне кажется не хорошо. Происходит это из-за того что изменяется пропс lacation.pathname, который и там и там используется. Как лучше тогда реализовать активные пункты?

Как вариант, в каждом меню завести массив со всеми собственными роутами, и в shouldComponentUpdate делать проверку на наличие текущего роута. Пахнет костылем.... Или нет?
  • Вопрос задан
  • 89 просмотров
Подписаться 1 Средний Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    React-разработчик
    3 месяца
    Далее
  • Skillfactory
    Специализация Frontend-разработчик
    9 месяцев
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
@nluparev
а каждое меню не может иметь свой локальный стейт который будет хранить активный пункт? или это как-то завязано на общей навигации приложения?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ITK academy Нижний Новгород
от 50 000 до 90 000 ₽
IT ATLAS Москва
от 200 000 до 250 000 ₽
ITK academy Казань
от 50 000 до 90 000 ₽