Задать вопрос
@Raybul

Как не рендерить компонент при смене URL?

Всем привет
У меня есть компонент MainView в нем два компонента NavHomes и NavRooms,
при нажатии на дом или комнату меняется url ( например : /homes/10/rooms/5) при смене урла перерисовывается вся страница MainView, соответственно и оба компонента с навигацией. Kак мне сделать так, что если меняется только комната, NavHomes не рендерился?

вот роуты react-router-dom.
{path: '/homes/:homeId', exact: true, component: MainView},
{path: '/homes/:homeId/rooms/:roomId', exact: true, component: MainView},

upd:
компонент с навигацией по домам сделан Swiper react component, проблема в то что при рендере, свайпер постоянно возвращается в начало, а мне нужно что бы он всегда был в зоне активного элемента
  • Вопрос задан
  • 207 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Мидл фронтенд-разработчик
    5 месяцев
    Далее
  • Яндекс Практикум
    React-разработчик
    3 месяца
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
Aetae
@Aetae
Тлен
Если меняется состояние компонента - происходит попытка передеритесь всё содержимое без вариантов. Так работает React.
Ты можешь только в самом компоненте NavHomes останавливать лишний рендер, если завернёшь его в memo и не будешь передавать лишних свойств.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы
ITK academy Нижний Новгород
от 80 000 до 120 000 ₽
ITK academy Воронеж
от 50 000 до 90 000 ₽