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

Как передать результат выполнения функции в другой компонент?

Есть функция в родительском компоненте:

filterItems = ( event ) => {
...
return result
}

Которая вызывается из дочернего компонента. Внутри этой функции устанавливается state. В render я хочу передать результат выполнении этой функции в другой дочерний компонент, пробую так: <Filtered filterItems={this.filterItems} />
В дочернем компоненте я смотрю props: console.log(this.props);
Но вижу:
spoiler
5e9066c4756be993302235.png

Подскажите пожалуйста, что я не так делаю?
  • Вопрос задан
  • 354 просмотра
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
@uroot Автор вопроса
На stackoverflow намекнули на целесообразность такого действия. Поэтому я результат функции добавил в стейт и его передал в родительский компонент:

filterItems = ( event ) => {
    ...
    this.setState( {items} )
  }


render() {
    return (
      <div>
        <Filter filterItems={this.filterItems} />
        {
          this.state.filters.length
            ? <Filtered items={this.state.items} />
            : <Item />
        }
      </div>
    )
  }


Это работает как нужно. Но вопрос открытый :)
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы