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

Как унаследовать компонент в React и изменить его?

Всем привет.
Использую React, Redux и React-router-redux. Имеется базовый контейнер MainContainer, который рендерит хедер, футер и левое меню. Также, вверху есть кнопка "Календарь", при нажатии на которую юзер попадает в свой календарь. Как правильно унаследовать MainContainer, сохранив верхнее все статичные элементы (хедер, футер, левое меню)?
Грубо говоря, необходимо при клике на различные элементы меню менять только основную часть.
Спасибо.
  • Вопрос задан
  • 263 просмотра
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Мидл фронтенд-разработчик
    5 месяцев
    Далее
  • Яндекс Практикум
    React-разработчик
    3 месяца
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
Решения вопроса 1
Labriko
@Labriko
Senior Frontend Developer
В Реакте не бывает случаев, когда наследование компонентов оправдано. Об этом подробно написано в официальной документации

At Facebook, we use React in thousands of components, and we haven't found any use cases where we would recommend creating component inheritance hierarchies.


Контент должен прокидываться через this.props.children компонента MainContainer, его рендер должен возвращать что-то вроде этого:
<div>
  <Header />
  <Menu />

  <div className="content">
    {this.props.children}
  </div>

  <Footer />
</div>


Использование:
<MainContainer>
{/* Контент */}
</MainContainer>
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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