Ich habe versucht, dies jetzt für eine Weile in Gang zu bringen und bin mir nicht sicher, wie ich das Folgende machen soll. Meine Formularkomponente enthält untergeordnete Elemente, die sowohl reguläre HTML-Markups als auch Eingaben enthalten. Wenn das Kind eine Eingabe ist, möchte ich die Funktionen attachToForm
und detachFromForm
hinzufügen. Wenn es sich nicht um eine Eingabe handelt, möchte ich die Kinder weiterhin durchlaufen, um sicherzustellen, dass das Element kein untergeordnetes Eingabefeld hat. Ob das Element ein Eingang ist oder nicht, ich möchte immer noch, dass es auf meiner Seite erscheint, ich möchte nur die Funktionen zu den Eingängen hinzufügen.
Das Problem ist, ich kann nur meine Funktion erhalten, nur die Eingänge zurückzugeben, die Etiketten und den Titel zu entfernen. Ich weiß, dass, weil ich nur Elemente mit Eingaben zu newChildren hinzufüge, aber wenn ich die anderen Elemente im else if Abschnitt schiebe, bekomme ich doppelte und ich kann an eine andere Weise denken, dies zu tun. Ich bin nicht sicher, ob ich grundlegendes JS nicht verstehe oder eine Gehirnlücke habe.
%Vor%Bearbeiten: Nicht sicher, wenn nötig, aber dies ist und Beispiel Formular im Traversing
%Vor%Nebenbei habe ich viel einfacher damit angefangen, folgendes zu tun, aber zu bekommen:
"Die Eigenschaft attachToForm kann nicht hinzugefügt werden, das Objekt ist nicht erweiterbar"
Wenn jemand weiß, warum, lass es mich wissen.
%Vor% Wenn Sie eine Fehlermeldung abfragen, haben Sie ein Problem mit dem unveränderlichen prop
-Objekt. Ausgehend von React 0.14 ist der prop
"eingefroren":
Das
props
-Objekt ist jetzt eingefroren, so dass die Requisiten nach dem Erstellen eines Komponentenelements nicht mehr unterstützt werden. In den meisten Fällen sollte stattdessenReact.cloneElement
verwendet werden. Diese Änderung macht Ihre Komponenten leichter verständlich und ermöglicht die oben erwähnten Compiler-Optimierungen.
Also versuchen Sie irgendwo in Ihrem Code ein prop
-Objekt zu erweitern, das einen Fehler verursacht.
Sie könnten verschiedene Teile Ihrer prop
Interaktionen mit try..catch
construction umbrechen, was Ihnen den genauen Problemort zeigt.
Tags und Links javascript reactjs