cycle |
Cycle |
| Liquid (Microsoft) |
Syntaxe
|
{% cycle valeur1, valeur2, valeur3, ... %}
|
Paramètres
| Nom |
Description |
| valeur1, valeur2, valeur3, ... |
Ce paramètre permet de spécifier une liste de valeurs à alterner successivement à chaque passage dans une boucle for ou autre structure répétitive. |
Description
Cette balise permet d'alterner entre plusieurs valeurs ou classes CSS à chaque itération d'une boucle.
Remarques
- Idéal pour alterner les valeurs dans une boucle : La balise cycle est particulièrement utile à l'intérieur des structures répétitives comme les boucles
for. Elle permet de faire tourner automatiquement une séquence de valeurs (comme des classes CSS,
couleurs, ou balises) à chaque itération, ce qui simplifie considérablement la logique d'alternance.
- Utilisation fréquente pour le design visuel : On s'en sert souvent pour alterner des couleurs de lignes dans un tableau, des styles de colonnes, ou
des arrière-plans d'éléments. Par exemple, elle permet d'alterner entre les classes "rouge", "bleu" et "vert" pour appliquer dynamiquement un style différent à chaque
élément généré.
- Comportement circulaire automatique : Une fois la liste des valeurs entièrement parcourue, cycle revient automatiquement au début et recommence la
séquence. Cela se fait sans intervention explicite, ce qui réduit la complexité du code à écrire pour gérer ce type de comportement cyclique.
- Aucun identifiant : cycle global partagé : Si la balise cycle n'est pas associée à un nom (clé), elle partage son état avec toutes les autres balises
cycle sans nom. Cela peut mener à des effets de bord inattendus si plusieurs cycles sont utilisés dans la même page sans être nommés explicitement.
- Possibilité d'assigner un identifiant unique : En fournissant un nom via la syntaxe {% cycle 'nom': valeur1, valeur2 %}, on isole le cycle de tous
les autres. Cette fonctionnalité est cruciale pour contrôler plusieurs cycles indépendants dans des boucles imbriquées ou dans des contextes différents de la page.
- Supporte des valeurs statiques ou dynamiques : Les valeurs fournies au cycle peuvent être des chaînes littérales, mais aussi des variables ou le
résultat d'expressions Liquid. Cela le rend polyvalent pour les scénarios plus complexes, par exemple pour faire alterner des chemins d'image ou des classes
calculées dynamiquement.
- Réduction significative du code conditionnel : En utilisant cycle, on évite d'avoir recours à des structures conditionnelles if
ou des compteurs manuels pour gérer l'alternance des styles ou contenus. Cela rend le code plus lisible, concis et facile à maintenir, surtout dans des boucles de
présentation de données.
- Comportement prévisible dans des boucles imbriquées : Sans nommage explicite, cycle continue à avancer même dans les boucles imbriquées, car son état
est global. Cela peut poser problème si l'on attend un redémarrage du cycle dans une boucle interne. Dans ce cas, utiliser des cycles nommés est essentiel pour garantir
le comportement voulu.
Dernière mise à jour : Mercredi, le 23 Juillet 2025