Dies ist ein wiederkehrendes Problem, das ich mit React habe. Die Methode componentDidMount
wird garantiert ausgelöst, wenn die Komponente zum ersten Mal gerendert wird, so dass es ein natürlicher Ort zu sein scheint, DOM-Messungen wie Höhen und Offsets zu machen. Oft erhalte ich jedoch zu diesem Zeitpunkt des Lebenszyklus der Komponente falsche Lesarten. Die Komponente ist im DOM, wenn ich mit dem Debugger breche, aber es ist noch nicht auf dem Bildschirm gemalt. Ich bekomme dieses Problem mit Elementen, deren Breite/Höhe meistens auf 100% gesetzt ist. Wenn ich nehme Messungen in componentDidUpdate
- alles funktioniert gut, aber diese Methode nicht bei den anfänglichen Feuer der Komponente machen.Wann wird `componentDidMount` ausgelöst?
Also meine Frage ist - wann genau ist componentDidMount
gefeuert, weil es offensichtlich nicht gefeuert wird, nachdem alle Browserfarben fertig sind.
EDIT: This Stackoverflow issue beschäftigt sich mit dem gleichen Thema:
Es verweist auch this github conversation die erklärt, was
Dies scheint relevant: http://stackoverflow.com/questions/25371926/using-react-how-can-i-get-the-width-of-an-auto-sized-dom -element – lux