2016-12-07 7 views
0

In Winkelmaterial Demo, wenn ich die zum automatischen Vervollständigung Floating-Label Beispiel zu testen, ist es nicht richtigmd-Autovervollständigung mit Fehlern funktioniert beim ersten Mal nur

auf „Liebling

https://material.angularjs.org/latest/demo/autocomplete

  1. Klicken Sie mit Fehlern funktioniert Zustand“und klicken Sie anschließend auf> Fehlermeldung angezeigt wird: OK
  2. die Seite aktualisieren, klicken Sie auf‚Lieblingszustand‘, geben Sie‚xxx‘und klicken Sie anschließend auf> Fehlermeldung angezeigt: OK
  3. nun nicht ant aktualisieren Sie das Feld zurückgesetzt> keine Fehlermeldung, aber das Feld ist rot: Nicht für mich zu arbeiten, würde ich
  4. eingeben „xxx“ wieder eine erforderliche Fehlermeldung zu erwarten, keine Fehlermeldung

Haben Sie eine Lösung, damit die Fehlermeldungen korrekt funktionieren?

Plunker Beispiel: https://plnkr.co/edit/AmTLs4mbRsxgSNjEKvhn der Code der md-autaucomplete Feld

<md-autocomplete flex required 
     md-input-name="autocompleteField" 
     md-input-minlength="2" 
     md-input-maxlength="18" 
     md-no-cache="ctrl.noCache" 
     md-selected-item="ctrl.selectedItem" 
     md-search-text="ctrl.searchText" 
     md-items="item in ctrl.querySearch(ctrl.searchText)" 
     md-item-text="item.display" 
     md-require-match 
     md-floating-label="Favorite state"> 
     <md-item-template> 
     <span md-highlight-text="ctrl.searchText">{{item.display}}</span> 
     </md-item-template> 
     <div ng-messages="searchForm.autocompleteField.$error" ng-if="searchForm.autocompleteField.$touched"> 
     <div ng-message="required">You <b>must</b> have a favorite state.</div> 
     <div ng-message="md-require-match">Please select an existing state.</div> 
     <div ng-message="minlength">Your entry is not long enough.</div> 
     <div ng-message="maxlength">Your entry is too long.</div> 
     </div> 
    </md-autocomplete> 

dank

+0

reproduzieren das Problem auf dem Plotter – Sajeetharan

+0

danke. Ich werde diesen Fix verwenden –

Antwort

1

scheint ein Fehler zu sein.

Es gibt mehrere Fehler im Zusammenhang mit zumindest, zum Beispiel: https://github.com/angular/material/issues/6767

Die einfachste Abhilfe, die ich für den Fall in der Demo gefunden entweder ng-if="searchForm.autocompleteField.$touched" mit ng-show zu ersetzen oder sie vollständig zu entfernen.

Verwandte Themen