2016-08-02 11 views
0

In meiner angular2-App habe ich versucht, die Option eines Select-Tags mit einem Array in einer Komponente zu setzen.Select-Tag hat keine Option

Hier ist der select-Tag:

<select 
       class="form-control" 
       ngControl="frequency" 
       #frequency="ngForm" 
       required> 
       <div *ngFor="#f of frequencies"> 
        <option >{{f}}</option> 
       </div> 
      </select> 

Iand hier wird die Komponente:

export class FormComponent{ 

    frequencies=['aaa','bbb','ccc']; 

} 

Das Problem, wenn die Seite geladen get es keines dieser Option hat?

Antwort

3

Setzen Sie die *ngFor auf dem <option> Element und das <div>

 <select 
      class="form-control" 
      ngControl="frequency" 
      #frequency="ngForm" 
      required> 
       <option *ngFor="#f of frequencies">{{f}}</option> 
     </select> 

In den letzten Angular2 Versionen entfernen sollte es

 <select 
      class="form-control" 
      ngControl="frequency" 
      #frequency="ngForm" 
      required> 
       <option *ngFor="let f of frequencies">{{f}}</option> 
     </select> 

(let statt #)

+0

Scheint, wie '[Wert ] 'Attribut fehlt auf' Option' Element. –

+3

Standardmäßig wird der Text übergeben zu Option ('{{f}}') wird als Wert AFAIK verwendet, daher sollte es nicht notwendig sein (hängt davon ab, was genau er erreichen will). –