Передача данных между компонентами реактор-рельсов - PullRequest
0 голосов
/ 20 января 2020

Существует три компонента, и я хочу передать данные от calendar до ItemForm компонента через Main.

Main Компонент:

var Main = createReactClass({

 getInitialState() {
   return { items: [] ,
        }
 },     

 componentDidUpdate() {
   console.log(this.state.start) // Start is here
 },

 getStartEnd(start, end) {
   this.setState({start: start});
   this.setState({end: end});
   },

 render() {

return (
  <Router>
    <Route path="/calendar" render={() => <Calendar items={this.state.items} getStartEnd={this.getStartEnd}/>}></Route>
    <Route path="/itemform" render={(props) => <ItemForm {...props} start={this.state.start} end={this.state.end} />}></Route>
    <Route path="/itemshow/:id" render={(props) => <ItemShow {...props} />}></Route>
  </Router>
);
}
});

calendar component:
getStartEnd (start, end) вызывается внутри этого компонента.

ItemForm component:

var ItemForm = createReactClass({

  componentDidMount () {
  },

  componentDidUpdate() {
   console.log(this.props.start) // Is undefined 
  },

  render() {
   var start = this.props.start // Is undefined 
  return (
    <div>
     {start}
    </div>
   );
 }
});

Похоже, start и end пройдено из calendar в main компонент, но не может быть передан в ItemForm? Чего мне не хватает?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...