@rgs350

Как реализовать общий функционал для всех (нескольких) компонентов?

В типичной библиотеке компонентов для React все компоненты наследуются от React.Component. Но что если нам внезапно потребовался общий функционал для всех компонентов? Ну например свойство hidden, disabled, variation и т.д. Как быть?
  • Вопрос задан
  • 94 просмотра
Решения вопроса 2
vicodin
@vicodin
Имею некоторый опыт
Дождаться января с релизом хуков, или использовать альфу сейчас - самый красивый метод :)
https://www.reactjs.org/hooks
Ответ написан
Комментировать
rockon404
@rockon404 Куратор тега React
Frontend Developer
Для вашей конкретной задачи хорошо подойдет StyledComopоnents:
const hiddenSyle = props => props.hidden && css`
  display: none; 
`;

const disabledStyle = props => props.disabled && css`
  pointer-events: none;
  opacity: 0.3;  
`;

const Input = styled.input`
  ${hiddenStyle}
  ${disabledStyle}
`;


Ну и почитайте про Recompose и Hooks Api
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы