2016-06-26 17 views

risposta

0

Quando lo stato di un componente viene modificato, il componente viene nuovamente sottoposto a rendering da React. Mentre lo fa, anche i suoi componenti figlio vengono resi nuovamente, il che provoca anche cambiamenti in essi.

7

È praticamente lo stesso meccanismo utilizzato in qualsiasi altro linguaggio, come ci si aspetterebbe. I primitivi vengono passati per valore e le variabili che non sono primitive verranno passate per riferimento.

React si occupa internamente dell'aggiornamento degli oggetti di scena, in modo che i bambini abbiano sempre il valore più aggiornato del supporto.

This is the lifecycle method che viene chiamato quando si ricevono nuovi valori per oggetti di scena.

Tuttavia, assicurarsi di rispettare l'infrastruttura messa in atto e l'API esposta fornita da React.

0

Se si passa lo stato del componente come oggetti di scena al proprio figlio, se lo stato del componente padre lo cambia, viene eseguito nuovamente il rendering, il quale inoltre eseguirà il re-rendering dei propri figli con le proprietà aggiornate. I bambini non ascoltano direttamente il cambiamento di stato come fa il genitore, sono semplicemente ridisegnati come risultato della modifica dello stato dei genitori e aggiornati.

Date un'occhiata a questo - https://facebook.github.io/react/docs/multiple-components.html. Ti aiuterà a capire come funziona questo concetto. Spero che questo ti aiuti!

+0

Nel componente figlio, voglio rilevare se qualcosa è cambiato - un valore di campo. Quindi passo queste informazioni giù attraverso i sostegni da genitore a figlio. MA il bambino GIÀ ha il valore del campo modificato perché lo stato genitore scende negli oggetti di scena. –

+0

@DukeDougal È possibile fare riferimento alla mia risposta per il metodo del ciclo di vita che è possibile utilizzare per intercettare le modifiche in entrata. Puoi controllare le tue modifiche lì. La funzione viene chiamata con i nuovi valori degli oggetti di scena e avrai ancora accesso ai vecchi valori usando il riferimento 'this.props' che punterà al tuo componente. –