0
votes

Angulaire - Définition de la valeur par défaut pour Dropdown - Solutions ne fonctionne pas?

objectif strong>: définissez la valeur par défaut pour une liste déroulante qui modifie l'adresse du site que l'utilisateur est activé / fr / ou / es / pour l'anglais ou l'espagnol

problème forte >: Après avoir traversé la documentation et à travers chaque article, je pouvais trouver tel que Options de dérivation angulaire 2 Valeur par défaut , aucune des variations ne semble fonctionner. P>

Qu'est-ce qui ne va pas? Et ai-je besoin d'une forme / type de tapis ou existe-t-il un moyen plus simple de le faire? P>

Ce que j'ai essayé strong>: Voici quelques-unes des variantes de ce que je ' J'ai essayé dans le HTML et dans le type dactylographique: p> xxx pré>

html fort>: p> xxx pré>

TypeScript STRT>: P>

this._siteForm.setValue({ languages: "en" });


0 commentaires

3 Réponses :


0
votes

La raison pourrait être le type de valeurs que vous définissez par défaut et le type d'objets que vous êtes en boucle.

Le type est chaîne code> ici: p> xxx pré>

mais c'est un objet JSON ici: p>

<mat-option *ngFor="let language of languages" [value]="language">
     {{language.viewValue}}
</mat-option>


6 commentaires

L'option Mat-Option a une valeur = langue et également la touche-sélection. Voulez-vous dire que la valeur est la chaîne pour l'option Mat-Option? J'ai utilisé ce format dans d'autres domaines sans problème. Pourquoi ne travaille-t-il pas ici?


Merci. La méthode SetValue ne devrait-elle pas changer cela? Comment puis-je le mettre à Json? La syntaxe de votre commentaire semble identique.


J'ai aussi essayé de patchvalue mais cela n'a pas fonctionné. Ajouter {{langue.viewvalue}} à la page Sélectionnez la page.


@ Banglerd @ Bangileur Faites ceci à Mat-Select: [Valeur] = "Langues [0]"


Je l'ai fait avec des langues [je] donc cela pourrait être dynamique et cela a fonctionné.


Pouvez-vous mettre à jour votre réponse pour inclure ce que vous avez dans le commentaire? Comme cela ne fonctionne pas, mais votre commentaire a fonctionné.



0
votes

Essayez ceci:

<mat-select (selectionChange)="doSomething($event)" [(ngModel)]='defaultLanguage'>
     <mat-option *ngFor="let language of languages" [value]="language">
          {{language.viewValue}}
     </mat-option>
</mat-select>


0 commentaires

0
votes

Vous voulez probablement utiliser quelque chose comme ceci: xxx

puis définissez la langue par défaut sur l'une de ces valeurs suivantes: xxx

ceci La façon dont les options sont des chaînes simples plutôt que de JSON les rendant facilement comparables. Actuellement, votre variable de défautLanguage ne correspond pas à l'une des options.


0 commentaires