Ich habe eine Liste der Elemente mit Eisen-Liste aufgeführt. Die Artikel in der Eisenliste sind erweiterbar, für jeden Artikel gibt es eine Ausgabeform.Polymer Eisen-Liste Artikel in der Liste hinzufügen und wählen Sie den neu hinzugefügten Artikel
Es besteht auch die Möglichkeit, einen neuen Eintrag zu erstellen, indem Sie auf eine allgemeine Schaltfläche "Hinzufügen" klicken. Dann wird ein neues Element mit der Methode this.push ('items', newItem) zur Liste hinzugefügt.
Der Druck des neuen Artikels funktioniert gut, die Liste wird aktualisiert.
Ich möchte, dass nach dem Drücken eines neuen Elements das Formular entsprechend dem Element sofort erweitert werden. Wenn der Benutzer also ein neues Objekt erstellen möchte, wird das Erstellungsformular sofort angezeigt.
Um das Formular für ein Element zu erweitern, greife ich einfach den Index der Eisen-Liste aus dem DOM (Element 0 Index 0, Element 1, Index 1 ...), dann füge ich eine CSS-Klasse, die wird es ausweiten.
Das Problem, das ich habe, ist, dass zwischen dem Drücken des Elements und dem Aufruf der Methode, die das Element erweitern wird, das DOM noch nicht gerendert wird, so dass es keinen Index in der Eisenliste entsprechend neu gibt erstellter Artikel
Gibt es einen Teil des Lebenszyklus des Elements, den ich verpasst habe? Nach der Forschung habe ich keine Methoden gefunden, um das Rendern der Eisenliste oder der Aktualisierung zu erzwingen ... Könnte mir jemand eine Idee geben, wie man das Formular sofort ausfüllt, nachdem ich das Objekt in das Array geschoben habe?
Fügen Sie bitte einen Code hinzu, der zeigt, was Sie zu erreichen versuchen und das es ermöglicht, Ihr Problem zu reproduzieren. –
Hi Gunter, der Cody ist ziemlich kompliziert zu reproduzieren ... Grundsätzlich würde ich gerne wissen, ob es eine Möglichkeit gibt, auf das Rendering des DOM zu warten, um dann ein Mausklick-Ereignis auszulösen – gabriela
Wenn es zu kompliziert ist, es hinzuzufügen Auf die Frage ist es noch viel komplizierter für Leute, die Ihre Frage lesen, um darüber nachzudenken, besonders ohne Ihren Code zu sehen. Versuchen Sie, es auf ein einfaches Beispiel zu reduzieren, das zu Ihrer Frage passt. Ich verstehe auch nicht, was Sie meinen, indem Sie "auf das Rendering des DOM warten und dann ein Mausklick-Ereignis auslösen". –