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> html fort>: p> TypeScript STRT>: P> this._siteForm.setValue({ languages: "en" });
3 Réponses :
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 mais c'est un objet JSON ici: p> chaîne code> ici: p>
<mat-option *ngFor="let language of languages" [value]="language">
{{language.viewValue}}
</mat-option>
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]" CODE>
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é.
Essayez ceci:
<mat-select (selectionChange)="doSomething($event)" [(ngModel)]='defaultLanguage'> <mat-option *ngFor="let language of languages" [value]="language"> {{language.viewValue}} </mat-option> </mat-select>
Vous voulez probablement utiliser quelque chose comme ceci: puis définissez la langue par défaut sur l'une de ces valeurs suivantes: p> 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. p> p>