reaccionar métodos de ciclo de vida comprensión

Soy un novato en React.js y estoy tratando de comprender varios métodos en los métodos de reacción del ciclo de vida.

Hasta ahora, todavía tengo algo que me confunde:

1)

Hasta donde yo entiendo, la diferencia entrecomponentWillUpdate ycomponentWillReceiveProps es esocomponentWillReceiveProps Se llamará cuando los padres cambien los accesorios y podamos usar setState (setState de este niño dentrocomponentWillReceiveProps)

por ejemplo:https://github.com/bgerm/react-table-sorter-demo/blob/master/jsx/app.jsx

var App = React.createClass({
  getInitialState: function() {
    return {source: {limit: "200", source: "source1"}};
  },
  handleSourceChange: function(source) {
    this.setState({source: source});
  },
  render: function() {
    return (
      <div>
        <DataSourceSelectors onSourceChange={this.handleSourceChange} source={this.state.source} />
        <TableSorter dataSource={urlForDataSource(this.state.source)} config={CONFIG} headerRepeat="5" />
      </div>
    );
  }
});

En TableSorter, tenemos

componentWillReceiveProps: function(nextProps) {
    // Load new data when the dataSource property changes.
    if (nextProps.dataSource != this.props.dataSource) {
      this.loadData(nextProps.dataSource);
    }
  }

es decir, cuando cambiamosthis.state.source, esperaremoscomponentWillReceiveProps ser llamado en TableSorter

Sin embargo, no entiendo bien cómo usarcomponentWillUpdate en este caso, la definición decomponentWillUpdate es

componentWillUpdate(object nextProps, object nextState)

¿Cómo podemos pasar nextState de padres a hijos? O tal vez estoy equivocado, ¿se pasa el nextState del elemento padre?

2) métodocomponentWillMount me confunde porque en el documento oficial dice que

Se invoca una vez, tanto en el cliente como en el servidor, inmediatamente antes de que se produzca el renderizado inicial.

En este caso, si uso setState en este método, anulará getInitialState ya que solo se llamará una vez en inicial. En este caso, cuál es la razón para establecer los parámetros en el método getInitialState. En este caso particular, tenemos

  getInitialState: function() {
    return {
      items: this.props.initialItems || [],
      sort: this.props.config.sort || { column: "", order: "" },
      columns: this.props.config.columns
    };
  },
  componentWillMount: function() {
    this.loadData(this.props.dataSource);
  },
  loadData: function(dataSource) {
    if (!dataSource) return;

    $.get(dataSource).done(function(data) {
      console.log("Received data");
     this.setState({items: data});
     }.bind(this)).fail(function(error, a, b) {
      console.log("Error loading JSON");
     });
  },

los artículos se anularán inicialmente y por qué todavía necesitamositems: this.props.initialItems || [] int el método getInitialState?

Espero que puedas entender mi explicación, y por favor dame algunas pistas si tienes alguna. Muchas gracias por eso :)

Respuestas a la pregunta(5)

Su respuesta a la pregunta