2017-06-16 2 views
0

Comment puis-je transmettre un article en cas de modification?Angulaire 2: Sélectionnez en modification pour renvoyer l'article

Je suis arrivé jusqu'ici:

<select #sel (change)="select.emit(sel.value.url)"> 
     <option *ngFor="let item of selectlist"> 
      {{item.description}} 
     </option> 
    </select> 

Mais je voudrais obtenir le « item » repassé sur le changement.

je devrais retourner tout l'objet de l'article

{ valeur: 0, Description: 'Home', url: 'http://www.color.com' }

mais j'obtenir 'Home'.

Voici mon tableau complet

public pagelist:Array<Object> = [ 
     { 
     value: 0, 
     description: 'Home', 
      url: 'http://www.color.com' 
     }, 
     { 
     value: 1, 
     description: 'Tours', 
     subpage: [{ 
        value: 0, 
        description: 'Italy' 
       }, 
       { 
        value: 0, 
        description: 'France' 
       }, 
       { 
        value: 0, 
        description: 'London' 
       }] 
     }, 
     { 
     value: 1, 
     description: 'About us', 
      url: 'http://www.color.com' 
     }, 
      { 
     value: 1, 
     description: 'Contact us', 
      url: 'http://www.color.com' 
     } 

    ]; 

Répondre

1

Remplacez votre code avec:

<select #sel (change)="select.emit(selectlist[$event.target.value])"> 
    <option [value]='i' *ngFor="let item of selectlist; let i = index;"> 
     {{item.description}} 
    </option> 
</select> 
+0

qui obtiennent moi la valeur mais je veux l'obj article. –

+0

@ChrisTarasovs, s'il vous plaît vérifier maintenant –

+0

J'ai déjà essayé, mais je n'ai pas défini –