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

Почему Redux мешает получить Ref компонента?

Есть родитель. В него импортируются два обычных компонента. В родителе добавляю им ref через this.element - React.createRef(). Первый компонент его показывает, а второй нет. Выяснил, что это из-за того, что второй компонент подключен к Redux и проблема в этом. Если сделать обычный экспорт
export default Payment;
вместо
export default connect(mapStateToProps, mapDispatchToProps)(Payment);

тогда и у него ref отображается.
Почему Redux мешает и как получить ref при наличии самого Redux?
  • Вопрос задан
  • 138 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Мидл фронтенд-разработчик
    5 месяцев
    Далее
  • Яндекс Практикум
    React-разработчик
    3 месяца
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
Решения вопроса 1
ruvasik
@ruvasik
https://www.bryce.ru
Проблема не в redux, а в том, что для него вы используете connect, то есть HOC.
Поэтому надо использовать forwardRef.
https://reactjs.org/docs/forwarding-refs.html
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@DaveGarrow Автор вопроса
Выход - export default connect(mapStateToProps, mapDispatchToProps, null, { forwardRef: true })(Payment);

https://github.com/reduxjs/react-redux/issues/1119
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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