Occasionalmente ho componenti di reazione che sono concettualmente stateful che voglio ripristinare. Il comportamento ideale sarebbe equivalente a rimuovere il vecchio componente e leggere un nuovo componente incontaminato.
React fornisce un metodo setStateche consente di impostare il proprio stato esplicito dei componenti, ma che esclude lo stato implicito come il focus del browser e lo stato del form, ed esclude anche lo stato dei suoi figli. Cogliere tutto quello stato indiretto può essere un compito difficile, e preferirei risolverlo in modo rigoroso e completo piuttosto che giocare a whack-a-mole con ogni nuovo bit di stato sorprendente.
C'è un'API o un pattern per farlo?
Modifica: ho fatto un esempio banale dimostrando l' this.replaceState(this.getInitialState())approccio e confrontandolo con l' this.setState(this.getInitialState())approccio: jsfiddle - replaceStateè più robusto.