Таргетинг / прокрутка до компонента React, который не является близким родителем / дочерним элементом - PullRequest
1 голос
/ 05 февраля 2020

У меня есть ситуация, когда я хочу прокрутить компонент React от другого компонента, который не в прямых или близких отношениях родитель / потомок.

Структура может быть объяснена как следует:

Component A > a parent > a parent > a parent > a parent > a parent > a parent > a child > a child > Component B

Как видите, оно не является прямым. Если бы отношения были прямыми или даже дедушкой / внуком, я бы обычно проходил реф. Однако в этом случае мне нужно было бы пропустить ссылку через 10 или около того файлов, чтобы получить к ней доступ, что кажется нелепым.

Я знаю, что могу использовать document.getElementById (или подобное), но мне было интересно если есть способ, которым я могу сделать это через ссылку или что-то подобное в React?

1 Ответ

0 голосов
/ 07 февраля 2020

Вы можете попробовать React Context . Поместите поставщика контекста в компонент A, а получателя контекста - в компонент B. B может передать свою ссылку в A через контекст или наоборот

...