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 setState
che 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.