392 votes

Comment ajouter un attribut conditionnel dans Angular 2?

Comment puis-je conditionnellement ajouter un attribut de l’élément par exemple le `` d’un contrôle checkbox ?

Les versions précédentes de moment angulaire avaient et je pense que qui tous semblent offrir les fonctionnalités que je suis après. Toutefois, ces attributs ne semblent pas exister dans angulaire 2 et je ne vois pas d’autre moyen de fournir cette fonctionnalité.

783voto

Günter Zöchbauer Points 21340

``Il supprime :

ou

49voto

Shaishab Roy Points 9680

en angulaire-2 attribut syntaxe est

Lie le rôle de l’attribut au résultat de l’expression myAriaRole.

pour permettre d’utiliser comme

21voto

Ragnaraxis Points 21

Raffinage Günter Zöchbauer réponse:

Cela semble être différent maintenant. J'ai essayé de faire ce conditionnelle, appliquer un attribut href d'une balise d'ancrage. Vous devez utiliser non défini pour le " ne s'appliquent pas le cas. Comme exemple, je vais vous démontrer un lien conditionnellement ayant un attribut href appliquée.

Une balise d'ancrage sans un attribut href devient en texte brut, indiquant un espace réservé pour un lien, par le lien hypertexte spec.

Pour ma navigation, j'ai une liste de liens, mais un de ces liens, représente la page en cours. Je ne voulais pas le lien de page en cours à être un lien, mais encore voulez qu'il apparaisse dans la liste (il a quelques-uns des styles personnalisés, mais cet exemple est simplifié).

<a [attr.href]="currentUrl !== link.url ? link.url : undefined">

C'est plus propre qu'à l'aide de deux *ngIf est sur une plage et de balise d'ancrage, je pense.

8voto

Rohit Tirmanwar Points 59

Si c’est un élément d’entrée vous pouvez écrire quelque chose comme... `` La valeur de la condition doit être true ou false.

Aussi pour les attributs de style...``

-8voto

Cody Points 1198
<h3>Inline-cartes sont pratiques, trop.<p>Ils sont un peu plus explicite et lisible aussi bien.</p><pre><code></code></pre><p>Juste une autre façon d’accomplir la même chose, dans le cas où vous n’aimez pas la syntaxe ternaire ou <code></code> s (etc.).</p></h3>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X