4 Antworten. Wenn während des VirtualDOM-Abgleichs eine Komponente existierte, aber nicht mehr vorhanden ist, wird die Komponente als nicht gemountet betrachtet und erhält die Möglichkeit, sie zu bereinigen (über componentWillUnmount). Beim Abreißen eines Baumes werden alte DOM-Knoten zerstört. Komponenteninstanzen erh alten componentWillUnmount.
Warum deaktiviert meine Komponente React?
Komponenten werden ausgehängt wenn die übergeordnete Komponente nicht mehr gerendert wird oder die übergeordnete Komponente eine Aktualisierung durchführt, die diese Instanz nicht rendert. ReactDOM. unmountComponentAtNode löst auch ein Unmount aus.
Wie verhindern Sie das Aushängen von Komponenten?
Mit react-router können Sie ganz einfach eine Routenänderung verhindern (was das Aushängen der Komponente verhindert), indem Sie Prompt verwenden. Sie müssen die Eigenschaft getUserConfirmation, die eine Funktion ist, manuell übergeben. Sie können diese Funktion in jedem Router (Browser, Speicher oder Hash) nach Belieben ändern, um Ihren benutzerdefinierten Bestätigungsdialog zu erstellen (z. B.
Was ist das Unmounten einer Komponente?
componentWillUnmount ist die letzte Funktion, die aufgerufen wird, unmittelbar bevor die Komponente aus dem DOM entfernt wird. Es wird im Allgemeinen verwendet, um eine Bereinigung für alle DOM-Elemente oder Timer durchzuführen, die in componentWillMount erstellt wurden. Bei einem Picknick entspricht componentWillUnmount kurz bevor Sie Ihre Picknickdecke aufheben.
Was löst die KomponenteWillUnmount aus?
componentWillUnmount wird unmittelbar vor a aufgerufenKomponente wird ausgehängt und zerstört. Führen Sie bei dieser Methode alle erforderlichen Bereinigungen durch, z. B. das Ungültigmachen von Timern, das Abbrechen von Netzwerkanforderungen oder das Bereinigen von Abonnements, die in der Komponente DidMount erstellt wurden.