У меня сложная веб-страница с использованием компонентов React, и я пытаюсь преобразовать страницу из статического макета в более отзывчивый, изменяемый размер. Тем не менее, я постоянно сталкиваюсь с ограничениями с React, и мне интересно, существует ли стандартный шаблон для решения этих проблем. В моем конкретном случае у меня есть компонент, который отображает как div с отображением: table-cell и width: auto.
К сожалению, я не могу запросить ширину моего компонента, потому что вы не можете вычислить размер элемента, если он фактически не помещен в DOM (который имеет полный контекст, с помощью которого можно вывести фактическую визуализированную ширину). Помимо использования этого для таких вещей, как относительное позиционирование мыши, мне также нужно это, чтобы правильно установить атрибуты ширины на элементах SVG в компоненте.
Кроме того, когда изменяется размер окна, как мне сообщать изменения размера от одного компонента к другому во время установки? Мы делаем все наши сторонние SVG-рендеринги в shouldComponentUpdate, но вы не можете устанавливать состояние или свойства на себя или на другие дочерние компоненты в этом методе.
Существует ли стандартный способ решения этой проблемы с помощью React?