title: passing data from child to grandparent
body: <p>I'm new to React and still learning.
  I'm trying to pass data from child to grandparent. So far I reach to parent and I`m stuck.</p>
  
  <p>Child component:</p>
  
  <pre><code>export class Child extends React.Component{
    constructor(props) {
      super(props);
      this.state= {
        counterChild: 5
      }
    }
  
    render() {
      return(
        &lt;div&gt;
          &lt;span&gt;Child: {this.state.counterChild}&lt;/span&gt;&lt;br /&gt;
          &lt;button onClick={this.props.data(this.state.counterChild)}&gt;Click me&lt;/button&gt;
        &lt;/div&gt;
      );
    }
  }
  </code></pre>
  
  <p>Parent component:</p>
  
  <pre><code>export default class Parent extends React.Component{
    constructor(props){
      super(props);
      this.state= {
        counterParent: 0
      }
    }
  
    updateParent(value) {
      return() =&gt; {
        this.setState({
          counterParent: value
        });
      }
    }
  
    componentWillMount(){
      this.props.data(this.state.counterParent) 
    }
  
    render(){
      return(
        &lt;div&gt;
          &lt;span&gt;Parent: {this.state.counterParent}&lt;/span&gt;
          &lt;Child data={this.updateParent.bind(this)}/&gt;
        &lt;/div&gt;
      );
    }
  }
  </code></pre>
  
  <p>in child component i use a button
  and here i guess i have to use componentWillMount in order to send to grandparent..but it does not reach</p>
  
  <p>Grandparent component:</p>
  
  <pre><code>export default class Grandparent extends React.Component{
    constructor(props){
      super(props);
      this.state = {
        counterGrandparent: 0
      }
    }
  
    updateGrandparent(value){
      return() =&gt; {
        this.setState({
          counterGrandparent: value
        });
      }
    }
  
    render(){
      return(
        &lt;div&gt;
          &lt;span&gt;Grandparent: {this.state.counterGrandparent}&lt;/span&gt;
          &lt;Parent data={this.updateGrandparent.bind(this)}/&gt;
        &lt;/div&gt;
      );
    }
  }
  </code></pre>
  
  <p>What did I do wrong here?</p>