2017-01-12 3 views
1

Ich habe ein Problem mit den Materialkomponenten von Angular2, wenn eine Komponente über setValue aktualisiert wird. Hier ist die plnkr ....Angular 2 Material - Platzhalterproblem mit setValue

https://embed.plnkr.co/lZhHJKBhuldUqzUt9Q18/

Sie können sehen, dass der Wert und die Platzhalter werden beide den gleichen Raum einnehmen.

Mit dem SetTimeout, ich emuliert einen Ajax Abruf, der das Formular asynchron füllen würde. Mache ich etwas falsch oder ist das ein Fehler mit dem Materialmodul von ng2?

+0

Wenn es eine Ajax holen, das Muster, das ich gesehen habe, ist die Komponente abonniert die Antwort und initialisiert das Formular, wenn es die Antwort empfängt. Dann wird das Formularfeld mit dem Antwortwert initialisiert (z.B. 'text: 'Sushi''). Passt das zu Ihrem Anwendungsfall? – stealththeninja

+1

@stealththeninja nicht wirklich, da dies nur ein einfacher Fall ist, in meiner realen Welt Anwendung wird das Formular geladen, dann kann ein anderes Feld basierend auf einer anderen Auswahl innerhalb des Formulars aktualisiert werden, in diesem Beispiel möchte ich nicht entsorgen der gesamten formGroup, um eine einzelne Komponente zu aktualisieren – csyperski

Antwort