Nœud Switch
Le nœud Switch permet de créer des branchements multiples basés sur la valeur d'une variable.
Paramètres
| Paramètre | Type | Obligatoire | Défaut | Description |
|---|---|---|---|---|
| Variable | Variable Handlebars | ✅ | — | Valeur à évaluer pour router vers une branche. |
| Cases | Liste | ✅ | — | Liste des cas de correspondance et de leurs branches associées. |
| Si la variable ne correspond à aucun des cas | Choix | ✅ | — | Choix obligatoire : Une erreur est déclenchée ou Mise en place d'un chemin par défaut. |
Variable
Variable à évaluer :
- Variable du contexte :
{{status}} - Propriété d'un objet :
{{order.status}} - Résultat d'un nœud :
{{lastResponse.data.type}}
La référence s'écrit avec ou sans doubles accolades (context.status ou {{context.status}}) Nouveauté. La coloration Handlebars s'affiche dans les deux cas.
Cases
Définissez les différents cas :
- Case 1 : Valeur à comparer (ex: "pending")
- Case 2 : Autre valeur (ex: "processing")
- Case 3 : Autre valeur (ex: "completed")
Si la variable ne correspond à aucun des cas
Champ obligatoire avec deux choix :
- Une erreur est déclenchée
- Mise en place d'un chemin par défaut — par défaut, une branche
defaultest créée
Entrée
Le nœud reçoit la valeur d'une variable du contexte du flux — donnée du déclencheur, propriété d'un objet ou résultat d'un nœud précédent — et la compare aux cases définies.
Sortie
Le nœud ne produit pas de valeur dans le contexte : il route l'exécution vers la branche correspondante.
- La branche dont la case correspond à la valeur de la variable est exécutée
- Si aucune correspondance : soit une erreur est déclenchée, soit la branche du chemin par défaut est exécutée
Erreurs
Si la variable ne correspond à aucun des cas et que l'option Une erreur est déclenchée est choisie, une erreur interrompt l'exécution du flux. Pour gérer proprement l'échec, ajoutez un nœud On Error au flux.
Exemple
Le nœud est utilisé pour :
- Router vers différentes branches selon une valeur
- Implémenter une logique de type switch/case
- Gérer plusieurs cas de figure
- Créer des flux dynamiques
Exemple 1 : Router selon le statut
Variable : {{order.status}}
Cases :
- "pending" → Traitement des commandes en attente
- "processing" → Suivi du traitement
- "completed" → Finalisation
- Si la variable ne correspond à aucun des cas → Une erreur est déclenchée
Exemple 2 : Router selon le type
Variable : {{event.type}}
Cases :
- "order.created" → Créer la commande
- "order.updated" → Mettre à jour
- "order.cancelled" → Annuler
- Si la variable ne correspond à aucun des cas → Mise en place d'un chemin par défaut (ignorer)