Как вызвать подачу от родителя? - PullRequest
0 голосов
/ 16 ноября 2018

Я хотел бы вызвать метод submit дочернего компонента.Поэтому я использую опору.Но, похоже, я просто получил объект WithContext.

Так как же звонить TodoForm > submit внутри App > submitForm.

Вот пример работы: https://codesandbox.io/s/92nm15pnqr

1 Ответ

0 голосов
/ 16 ноября 2018

Поскольку вы оборачиваете свой TodoForm компонент в withNamespaces HOC, получить ссылку на ваш TodoForm не так просто, как вызвать ref={..}, поскольку это возвращает ссылку на HOC.Чтобы получить ссылку на ваш компонент, вы должны использовать параметр innerRef при создании HOC (см. docs )

const TodoFormTranslated = withNamespaces("", {
  innerRef: (ref) => VARIABLE_WHICH_WILL_NOW_CONTAIN_REF_TO_YOUR_EL = ref
})(TodoForm);

быстро, но рабочее решение вашей проблемы будет выглядетьчто-то вроде этого: https://codesandbox.io/s/n55yvw1o2m

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

...