Реагировать forwardRef: Как глубоко вы можете передать forwardRef? - PullRequest
0 голосов
/ 12 февраля 2020

Мне интересно, как глубоко вы можете передать forwardRef во вложенном приложении, и как бы кто-нибудь передал его?

Примерно так:

<Parent>
  <Child>
    ....
  </Child>
</Parent>

    <Child>
      <GrandChild>
          ....      
      </GrandChild>
    </Child>

        <GrandChild>
          <GreatGrandChild>
            ....
          </GreatGrandChild>
        </GrandChild>

            <GreatGrandChild>
              ....
            </GreatGrandChild>

и затем использовать его в компоненте GreatGrandChild или передавая ссылку и элемент в Parent до GreatGrandChild

1 Ответ

1 голос
/ 12 февраля 2020

Вы можете передать ref настолько глубоко, насколько захотите, но это кажется неэффективным.

Одной из альтернатив будет использование API контекста, чтобы установить ref в источнике (компонент, содержащий элемент ref) и использовать его. у потребителя (ребенок, который будет использовать реф)

...