0
votes

Objet angulaire - Passez la valeur sélectionnée à une autre variable

J'essaie de définir une variable de numéro de type à la valeur sélectionnée d'un objet, mais ne comprenez pas comment la définir.

Je veux avoir l'âge du chat sélectionné. Je veux que la sélection code> soit un entier, mais elle est affichée sous forme de nan p>

html: p> xxx pré>

composant: p >

selectedOption: any; 
  options = [
    { name: "Neeko", age: 4},
    { name: "Gato", age: 6},
    { name: "Gatto", age: 12}
  ]

  // This is the problem. How do I correct it?
  // selectAge: number = +this.selectedOption; //NaN


1 commentaires

Comment l'utilisateur pourrait-il avoir sélectionné une valeur ajoutée et définir ainsi la valeur sélectionner sur la valeur , pendant que vous n'avez même pas fini de construire votre composant et que le composant n'est donc pas affiché dans le navigateur? La ligne Sélection: numéro = + ceci.selectedOption; est exécuté lors de la construction du composant. Puisque vous n'avez pas initialisé la propriété SementéeOption , sa valeur est indéfinie.


3 Réponses :


0
votes

Vous pouvez utiliser l'événement ngmodelChange sur votre directive. Lorsque votre sélection change, angular appellera le ngmodelchange , puis vous pourrez attribuer votre valeur:

html: xxx

the < Code> $ événement La variable représente l'option sélectionnée. xxx


0 commentaires


0
votes

Par exemple, votre variableOption sélectionnée est NULL, vous obtenez donc cette erreur. Vous pouvez utiliser l'événement NGModelChanger pour la lier.

Dans votre fichier HTML xxx

fichier TS xxx


0 commentaires