5

@ angular/material'in md-input-containers ve reaktif form modülünü kullanarak bir sorun yaşıyorum.Açısal2/malzeme 2: md-giriş-kapsayıcısı etiketi, programatik olarak değer değiştirildiğinde, yüzerliliği sıfırlamaz

FormBuilderFormGroup kullanarak değerlere bağlı üç md-inputs ile bir giriş formu yapıyorum. Her şey iyi çalışıyor.

Sorunum, ngSubmit işlevinde, girilen kimlik bilgileri geçersizse form sıfırlama işlemine sahip olduğumdur. FormGroup'un .reset() yöntemini kullanarak, değerleri varsayılan olarak sıfırlar, ancak md-input-containers'daki kayan etiketler, boş bir alanda olması gerektiği için orijinal yerine sıfırlanmaz. Materyal Tasarım direktiflerinin bunu güncellemek için bir bulanıklık olayı aradığını tahmin ediyorum ama anlatamam ve bunun gerçekleşmesi için nasıl zorlanacağımı bilmiyorum. , Formlar varsayılan (boş dizeler) sıfırlanır, ancak etiketler hala yüzer

submitForm(username: string, password: string, companyID: any):void { 

    this.userService.login(username, password, companyId) 
     .then(() => { 
     this.router.navigate(['main']); 
     }) 
     .catch(() => { 
     this.loginForm.reset(); 
     }) 
    } 

ve this.loginForm.reset() üzerine

çağrıldığını:

Labels still float. I reset Company ID for reference.

İşte

ngSubmit işlevi var Bunu nasıl düzelteceğinizle ilgili bir fikrin var mı? Bir bulanıklığı zorlamak için bunu denedim ve çözmedim, ancak bir ElementRef çağırmak istemiyorum.

+0

Bu hala herkes için bir sorunsa, bir plunker yapıp https://github.com/angular/material2 adresinden bir sorun göndermenizi öneririm –

cevap

0

MD-giriş konteynırına sarılmış giriş yerine md-giriş kontrolünü kullanmayı deneyin. Benim için çalıştı.

İlgili konular